summaryrefslogtreecommitdiffstats
path: root/screen-redraw.c
AgeCommit message (Collapse)Author
2017-04-05Give each client a name. This defaults to the tty name as before butnicm
falls back to an alternative if the tty name is not available. This is clearer than overloading the client ttyname member and allows us to remove the path stored in the tty struct, it should always be the same as the client.
2017-02-08Add a helper to store a cell, and some tidying.nicm
2017-02-03Add a window or pane id "tag" to each format tree and use it to separatenicm
jobs, this means that if the same job is used for different windows or panes (for example in pane-border-format), it will be run separately for each pane.
2017-01-07Add support for the OSC 4 and OSC 104 palette setting escape sequences,nicm
from S Gilles.
2016-10-13Add support for BCE (background colour erase). This makes various escapenicm
sequences (notable EL and ED but also IL, DL, ICH, DCH) create blank cells using the current background colour rather than the default colour. On modern systems BCE doesn't really have many benefits, but most other terminals now support it, some (lazy) applications rely on it, and it is not hard to include now that we have pane background colours anyway. Mostly written by Sean Haugh.
2016-10-12Compare to see if pane status line has actually changed, not just size, andnicm
do not draw if pane is not visible.
2016-10-10Loads more static, except for cmd-*.c and window-*.c.nicm
2016-10-09Make the CLIENT_STATUS flag imply that pane status lines are redrawn ifnicm
they are enabled and break the actual screen generation code into a separate function. Fixes problems reported by Romain Francoise.
2016-07-15Instead of representing colours in several different forms with variousnicm
cell flags, convert to use an int with flags marking 256 or RGB colours in the top byte (except in cells, which we don't want to make any bigger). From Brad Town.
2016-04-29Add option to include status text in the pane borders. Ifnicm
pane-border-status is set to "top" or "bottom" (rather than "off"), every pane has a permanent top or bottom border containing the text from pane-border-format. Based on a diff sent long ago by Jonathan Slenders, mostly rewritten and simplified by me.
2016-01-19I no longer use my SourceForge address so replace it.nicm
2015-12-15Make the marked pane a cmd_find_state.nicm
2015-10-27Move struct options into options.c.nicm
2015-06-04Add support for a single "marked pane". There is one marked pane in thenicm
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).
2015-05-07If status line is at the top, the offset needs to be adjusted whennicm
drawing pane numbers. Based on a diff from John O'Meara.
2015-04-19Support setting the default window and pane background colours (windownicm
and active pane via window-style and window-active-style options, an individual pane by a new select-pane -P flag). From J Raynor.
2015-02-06Move pane border options to window options rather than session, from Marc Finet.nicm
2014-11-14Label windows which are smaller than expected with a reason.nicm
2014-03-31Having three *clock* files is ridiculous, remove clock.c.nicm
2014-01-31Break up and simplify screen_redraw_screen.nicm
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.
2013-03-25When only two panes in a window, only draw half the separating line asNicholas Marriott
active.
2013-03-25Do not redraw panes if invisible.Nicholas Marriott
2012-05-23Use a predefined structure for not-space cells used to set attributes.Nicholas Marriott
2012-01-29Add an option to move the status line to the top of the screen,Nicholas Marriott
requested by many.
2012-01-21Show pane size in top right of display panes mode.Nicholas Marriott
2011-11-15Make window_pane_index work the same as window_index, from Ben Boeckel.Nicholas Marriott
2011-07-08Do not continue to send data to suspended/locked clients or there willNicholas Marriott
be a huge rush of it after they are resumed/unlocked. The main output path was fine but status line updates and the terminal state reset code were missed.
2010-09-11Use UTF-8 line drawing characters on UTF-8 terminals. Fixes some stupidNicholas Marriott
terminals (I'm looking at you, putty) which disable the vt100 ACS mode switching sequences in UTF-8 mode. Also on terminals without ACS at all, use ASCII equivalents where obvious.
2010-02-04Option to display the active pane in a different colour with the display-panesNicholas Marriott
command. From Paul Hoffman, thanks.
2010-01-03Options to set the colour of the pane borders, with different colours for theNicholas Marriott
active pane.
2009-12-03Massive spaces->tabs and trailing whitespace cleanup, hopefully for the lastNicholas Marriott
time now I've configured emacs to make them displayed in really annoying colours...
2009-10-28Add a minor optimisatin: if the character being printed is space, don't worryNicholas Marriott
about setting the background colour or attributes (except reverse).
2009-10-12Similarly add a tty_cursor_pane function to tidy up most of the calls.Nicholas Marriott
2009-09-10Permit options such as status-bg to be configured using the entire 256 colourNicholas Marriott
palette by setting "colour0" to "colour255".
2009-08-31Add a new display-panes command, with two options (display-panes-colour andNicholas Marriott
display-panes-time), which displays a visual indication of the number of each pane.
2009-08-10Reset the attributes after drawing all or part of the screen, and reset theNicholas Marriott
region before poll(2). This reduces (but does not eliminate) the chance of the attributes not being normal if tmux is disconnected without warning (ssh ~., reboot from inside, etc).
2009-07-31Pass the ACS border characters through tty_get_acs so they appear correctly onNicholas Marriott
terminals which don't use the standard set.
2009-07-24Use the full range of ACS line drawing characters to draw pane borders,Nicholas Marriott
including intersections.
2009-07-24Simplify screen redrawing by drawing the border and background together ratherNicholas Marriott
than border separately, and consolidating all the drawing characters into one string.
2009-07-14For some reason when clearing status/message it was redrawing the entire clientNicholas Marriott
not just the status line. Changing this also revealed the check for the status line was incorrect when drawing the pane.
2009-07-14Instead of faking up a status line in status_redraw, use the same code toNicholas Marriott
redraw it as to draw the entire screen, just skip all lines but the last. This makes horizontal split redraw properly when the status line is off.
2009-07-14Get rid of the PANE_HIDDEN flag in favour of a function, and moving theNicholas Marriott
decision for whether or not a pane should be drawn out of the layout code and into the redraw code. This is needed for the new layout design, getting it in now to make that easier to work on.
2009-06-25Unused variables. Found by lint, no binary change.Nicholas Marriott
2009-06-01Import tmux, a terminal multiplexor allowing (among other things) a singleNicholas Marriott
terminal to be switched between several different windows and programs displayed on one terminal be detached from one terminal and moved to another. ok deraadt pirofti