aboutsummaryrefslogtreecommitdiff
path: root/window.c
Commit message (Collapse)AuthorAge
...
* Move the shuffle code from new-window -a into a function and add a -anicm2015-06-17
| | | | flag for move-window too. From Thomas Adam.
* Add window_activity format, from Thomas Adam based on a diff originallynicm2015-06-15
| | | | from propos6 at gmail dot com.
* Add support for a single "marked pane". There is one marked pane in thenicm2015-06-04
| | | | | | | | | server at a time; it may be toggled or cleared with select-pane -m and -M (the border is highlighted). A new target '~' or '{marked}' specifies the marked pane to commands and it is the default target for the swap-pane and join-pane -s flag (this makes them much simpler to use - mark the source pane and then change to the target pane to run swapp or joinp).
* To replace c0-*, add a high watermark to the pty event, and also backoffnicm2015-05-12
| | | | | when the any of the ttys the pane is going to write to has buffered enough data.
* Remove the c0-* options which never really worked satisfactorily. Goingnicm2015-05-11
| | | | to try something else...
* Style spacing nits.nicm2015-05-07
|
* Add a format window_linked which is 1 if a window has been linkednicm2015-05-06
| | | | | | | multiple times, also remove the default space in window_flags and use a conditional to add it in window-status-format (this means additional flags can be added in the option without extra spaces). From Thomas Adam with tweaks by me.
* Add select-layout -o to undo the last layout change (apply the previouslynicm2015-04-28
| | | | set layout).
* Get rid of window_choose_list type.nicm2015-04-25
|
* Make message log a TAILQ.nicm2015-04-25
|
* Move the functions to convert ids from strings into session.c and window.c.nicm2015-04-25
|
* Change the windows array into an RB tree and fix some places where wenicm2015-04-22
| | | | were only looking at the first winlink for a window in a session.
* window_index is only used in one place (window_destroy) so inline it there.nicm2015-04-22
|
* Always format real layout even when zoomed.nicm2015-04-21
|
* Use a more sensible buffer size for flags string.nicm2015-04-20
|
* Rewrite of tmux mouse support which was a mess. Instead of havingnicm2015-04-19
| | | | | | | | | | | | | | | | | | | | | | | | | options for "mouse-this" and "mouse-that", mouse events may be bound as keys and there is one option "mouse" that turns on mouse support entirely (set -g mouse on). See the new MOUSE SUPPORT section of the man page for description of the key names and new flags (-t= to specify the pane or window under mouse as a target, and send-keys -M to pass through a mouse event). The default builtin bindings for the mouse are: bind -n MouseDown1Pane select-pane -t=; send-keys -M bind -n MouseDown1Status select-window -t= bind -n MouseDrag1Pane copy-mode -M bind -n MouseDrag1Border resize-pane -M To get the effect of turning mode-mouse off, do: unbind -n MouseDrag1Pane unbind -temacs-copy MouseDrag1Pane The old mouse options are now gone, set-option -q may be used to suppress warnings if mixing configuration files.
* Support setting the default window and pane background colours (windownicm2015-04-19
| | | | | and active pane via window-style and window-active-style options, an individual pane by a new select-pane -P flag). From J Raynor.
* Entries in the window list can be NULL, prompted by a crash seen by Bennicm2015-02-09
| | | | Boeckel.
* Notify on zoom/unzoom, from George Nachmann.nicm2014-12-15
|
* Only redraw pane when it has actually changed.nicm2014-10-21
|
* Add flags to selectp to enable and disable input to a pane, from Anishnicm2014-08-11
| | | | Athalye.
* Allow keys and send-keys to invisible panes, from saggy-kun at users dotnicm2014-06-23
| | | | sf dot net.
* Reset properly when c0-change-trigger is increased from zero so panesnicm2014-06-05
| | | | don't get stuck.
* If multiple arguments are given to new-session, new-window,nicm2014-05-13
| | | | | | split-window, respawn-window or respawn-pane, pass them directly to execvp() to help avoid quoting problems. One argument still goes to "sh -c" like before. Requested by many over the years. Patch from J Raynor.
* Both the two previous ways of navigating panes by direction havenicm2014-05-08
| | | | | | | | | | | | | | | | irritating flaws: a) The old way of always using the top or left if the choice is ambiguous is annoying when the layout is unbalanced. b) The new way of remembering the last used pane is annoying if the layout is balanced and the leftmost is obvious to the user (because clearly if we go right from the top-left in a tiled set of four we want to end up in top-right, even if we were last using the bottom-right). So instead, use a combination of both: if there is only one possible pane alongside the current pane, move to it, otherwise choose the most recently used of the choice.
* Some more long lines.nicm2014-04-17
|
* Set PATH explicitly, either from client or sessionnicm2014-04-17
| | | | | environment. Previously it came from the session environment. From J Raynor.
* Remove some unnecessary includes and fix a typo.nicm2014-04-17
|
* Correct the dance to fix the active pane in join-pane by pulling thenicm2014-04-17
| | | | | (right) code from break-pane and window_remove_pane into a helper function.
* Remove the monitor-content option and associated bits and bobs. It'snicm2014-04-17
| | | | | never worked very well. If there is a big demand for it to return, will consider better ways to do it.
* Don't segfaut when the parent of the layout cell is NULL, from Thomas Adam.nicm2014-03-31
|
* Fix crash due to uninitialized lastwp member of layout_cell, reported bynicm2014-02-22
| | | | Balazs Kezes.
* Allow replacing each of the many sets of separate foo-{fg,bg,attr}nicm2014-01-28
| | | | | | | | | | | | | | | | | | | | | | | | | options with a single foo-style option. For example: set -g status-fg yellow set -g status-bg red set -g status-attr blink Becomes: set -g status-style fg=yellow,bg=red,blink The -a flag to set can be used to add to rather than replace a style. So: set -g status-bg red Becomes: set -ag status-style bg=red Currently this is fully backwards compatible (all *-{fg,bg,attr} options remain) but the plan is to deprecate them over time. From Tiago Cunha.
* Remember the last active pane in the top-bottom or left-right cell sonicm2014-01-28
| | | | | that it can be restored when moving back to that cell with selectp -L/-R/etc. From Suraj N Kurapati.
* Alter how tmux handles the working directory to internally use filenicm2013-10-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | descriptors rather than strings. - Each session still has a current working directory. - New sessions still get their working directory from the client that created them or its attached session if any. - New windows are created by default in the session working directory. - The -c flag to new, neww, splitw allows the working directory to be overridden. - The -c flag to attach let's the session working directory be changed. - The default-path option has been removed. To get the equivalent to default-path '.', do: bind c neww -c $PWD To get the equivalent of default-path '~', do: bind c neww -c ~ This also changes the client identify protocol to be a set of messages rather than one as well as some other changes that should make it easier to make backwards-compatible protocol changes in future.
* Clear window->flags when clearing winlinksnicm2013-10-10
| | | | | | | | When clearing WINLINK_ALERTFLAGS for all sessions, we must also, for that window, clear the window->flags as well, otherwise sessions may well still see flags for winlinks long since cleared. This therefore introduces WINDOW_ALERTFLAGS to help with this.
* Fix compiler warnings, missing #include. From Thomas Adam.Nicholas Marriott2013-03-26
|
* Revert the command-prefix change which breaks sequences of commands.Nicholas Marriott2013-03-25
|
* Set pane resize flag when needed.Nicholas Marriott2013-03-25
|
* Don't zoom windows with one pane, from Romain Francoise.Nicholas Marriott2013-03-25
|
* Add resize-pane -Z to temporary zoom the active pane to occupy the fullNicholas Marriott2013-03-24
| | | | | | | | | | | | | | window or unzoom (restored to the normal layout) if it already zoomed, bound to C-b z by default. The pane is unzoomed on pretty much any excuse whatsoever. We considered making this a new layout but the requirements are quite different from layouts so decided it is better as a special case. Each current layout cell is saved, a temporary one-cell layout generated and all except the active pane set to NULL. Prompted by suggestions and scripts from several. Thanks to Aaron Jensen and Thiago Padilha for testing an earlier version.
* Do pane resize ioctls once at the end of the server loop rather thanNicholas Marriott2013-03-24
| | | | immediately.
* No more lint means no more ARGSUSED.Nicholas Marriott2013-03-22
|
* Automatically reflow wrapped lines when a pane is resized, requested byNicholas Marriott2013-02-05
| | | | many over the years and finally implemented by Richard Woodbury.
* Remove the layout undo/redo code which never really worked.Nicholas Marriott2013-01-17
|
* Support the 47 and 1047 SM and RM sequences (alternate screen withoutNicholas Marriott2012-11-27
| | | | cursor), requested by I forget who ages ago.
* Make mouse event structure clearer by defining events (up, click, drag)Nicholas Marriott2012-10-26
| | | | | and simplifying how buttons and wheels are represented, from Ailin Nemui. Should be no functional changes.
* Fix bad size in memcpy from Romain Francoise.Nicholas Marriott2012-10-25
|
* Fix up window reference counting and don't crash if the rename timerNicholas Marriott2012-08-21
| | | | | fires while the window is dead but still referenced. Fixes problem reported by Michael Scholz.
* Instead of numbering choose mode items 0-9a-z and then nothing, numberNicholas Marriott2012-08-11
| | | | | them all and if there are more than 10 use a prompt when 0-9 is pressed. From Thomas Adam.