summaryrefslogtreecommitdiffstats
path: root/window.c
AgeCommit message (Collapse)Author
2014-04-17Remove the monitor-content option and associated bits and bobs. It'snicm
never worked very well. If there is a big demand for it to return, will consider better ways to do it.
2014-03-31Don't segfaut when the parent of the layout cell is NULL, from Thomas Adam.nicm
2014-02-22Fix crash due to uninitialized lastwp member of layout_cell, reported bynicm
Balazs Kezes.
2014-01-28Allow replacing each of the many sets of separate foo-{fg,bg,attr}nicm
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.
2014-01-28Remember the last active pane in the top-bottom or left-right cell sonicm
that it can be restored when moving back to that cell with selectp -L/-R/etc. From Suraj N Kurapati.
2013-10-10Alter how tmux handles the working directory to internally use filenicm
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.
2013-10-10Clear window->flags when clearing winlinksnicm
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.
2013-03-26Fix compiler warnings, missing #include. From Thomas Adam.Nicholas Marriott
2013-03-25Revert the command-prefix change which breaks sequences of commands.Nicholas Marriott
2013-03-25Set pane resize flag when needed.Nicholas Marriott
2013-03-25Don't zoom windows with one pane, from Romain Francoise.Nicholas Marriott
2013-03-24Add resize-pane -Z to temporary zoom the active pane to occupy the fullNicholas Marriott
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.
2013-03-24Do pane resize ioctls once at the end of the server loop rather thanNicholas Marriott
immediately.
2013-03-22No more lint means no more ARGSUSED.Nicholas Marriott
2013-02-05Automatically reflow wrapped lines when a pane is resized, requested byNicholas Marriott
many over the years and finally implemented by Richard Woodbury.
2013-01-17Remove the layout undo/redo code which never really worked.Nicholas Marriott
2012-11-27Support the 47 and 1047 SM and RM sequences (alternate screen withoutNicholas Marriott
cursor), requested by I forget who ages ago.
2012-10-26Make mouse event structure clearer by defining events (up, click, drag)Nicholas Marriott
and simplifying how buttons and wheels are represented, from Ailin Nemui. Should be no functional changes.
2012-10-25Fix bad size in memcpy from Romain Francoise.Nicholas Marriott
2012-08-21Fix up window reference counting and don't crash if the rename timerNicholas Marriott
fires while the window is dead but still referenced. Fixes problem reported by Michael Scholz.
2012-08-11Instead of numbering choose mode items 0-9a-z and then nothing, numberNicholas Marriott
them all and if there are more than 10 use a prompt when 0-9 is pressed. From Thomas Adam.
2012-07-10xfree is not particularly helpful, remove it. From Thomas Adam.Nicholas Marriott
2012-07-08Clear flags across all sessions, from Thomas Adam.Nicholas Marriott
2012-05-28Use default-shell not _PATH_BSHELL to spawn commands, pointed out byNicholas Marriott
Dennis G?nnewig and Thomas Adam.
2012-04-08Do not fire name timer when automatic-rename is off, from Tim Ruehsen aNicholas Marriott
while ago.
2012-04-01Minor style nits - return ().Nicholas Marriott
2012-04-01Add a layout history which can be stepped through with select-layout -uNicholas Marriott
and -U commands (bound to 'u' and 'U' by default).
2012-03-20Check changes_timer with event_initialized before event_del.Nicholas Marriott
2012-03-20Add a simple form of output rate limiting by counting the number ofNicholas Marriott
certain C0 sequences (linefeeds, backspaces, carriage returns) and if it exceeds a threshold (current default 50/millisecond), start to redraw the pane every 100 milliseconds instead of making each change as it comes. Two configuration options - c0-change-trigger and c0-change-interval. This makes tmux much more responsive under very fast output (for example yes(1) or accidentally cat'ing a large file) but may not be perfect on all terminals and connections - feedback very welcome, particularly where this change has a negative rather than positive effect (making it off by default is a possibility). After much experimentation based originally on a request Robin Lee Powell (which ended with a completely different solution), this idea from discussion with Ailin Nemui.
2012-03-17Add notify hooks for various events, the functions are currently emptyNicholas Marriott
stubs but will be filled in for control mode later. From George Nachman.
2012-03-17Check event_initialized before event_del if event may not have been setNicholas Marriott
up; libevent2 complains about this. Reported by Moriyoshi Koizumi.
2012-02-02Move window name changes into wrapper function window_set_name, fromNicholas Marriott
George Nachman.
2012-01-30Give each window a unique id, like panes but prefixed with @. Based onNicholas Marriott
work from George Nachman.
2012-01-29Call bufferevent_free before closing file descriptor associated with itNicholas Marriott
or bugs in $EventMechanism on $OtherOS makes libevent get it's knickers in a twist. From Dylan Alex Simon.
2011-11-15Make window_pane_index work the same as window_index, from Ben Boeckel.Nicholas Marriott
2011-09-25Reject $SHELL if it is not a full path.Nicholas Marriott
2011-08-24Add pane-base-index option, from Ben Barbour.Nicholas Marriott
2011-06-05Get rid of the layout string code which tries to walk through the layoutNicholas Marriott
hierarchy and instead just look at what panes are actually in the window.
2011-04-18The mouse should only work in copy mode if mode-mouse is set, not justNicholas Marriott
mouse-select-pane.
2011-03-27Give each pane created in a tmux server a unique id (starting from 0),Nicholas Marriott
put it in the TMUX_PANE environment variable and accept it as a target. Suggested by and with testing and tweaks from Ben Boeckel.
2011-01-25Check if the index is in use and fail before creating the child process,Nicholas Marriott
rather than leaving a stray child on failure.
2011-01-08Move all calls to fcntl(...O_NONBLOCK) into a function and clear theNicholas Marriott
flag on the stdio file descriptors before closing them (fixes things like "tmux ls && cat").
2010-12-30Add a function to create window flags rather than doing the same thingNicholas Marriott
in two places. From Thomas Adam.
2010-12-06Add an option to alert (monitor) for silence (lack of activity) in aNicholas Marriott
window. From Thomas Adam.
2010-11-14Don't allow last and active window to become the same - a very bad moveNicholas Marriott
when the active window is closed and freed. Reported by sthen@.
2010-10-23Add a last-pane command (bound to ; by default). Requested ages ago byNicholas Marriott
somebody whose name I have forgotten.
2010-10-23When removing a pane, don't change the active pane unless the activeNicholas Marriott
pane is actually the one being removed.
2010-10-16Trying to set FD_CLOEXEC on every fd is a lost cause, just useNicholas Marriott
closefrom() before exec.
2010-08-25When destroying a pane, reset any mode (which reenables paneNicholas Marriott
bufferevent) before freeing the bufferevent.
2010-08-19Do not call event_del() for signals after fork(), just use sigaction()Nicholas Marriott
directly instead - calling libevent functions after fork() w/o event_reinit() is a bad idea, even if in this case it was harmless.