aboutsummaryrefslogtreecommitdiff
path: root/window.c
Commit message (Collapse)AuthorAge
* Merge branch 'obsd-master' into masterThomas Adam2021-10-07
|\
| * Handle splitw -I correctly when used from an attached client, GitHubnicm2021-10-07
| | | | | | | | issue 2917.
* | Merge branch 'obsd-master' into masterThomas Adam2021-08-27
|\|
| * Allow control mode clients to set a hard limit on the window width andnicm2021-08-27
| | | | | | | | height, GitHub issue 2594.
* | Merge branch 'obsd-master' into masterThomas Adam2021-08-20
|\|
| * Fill colour palette correctly from option for new panes, GitHub issuenicm2021-08-20
| | | | | | | | 2831.
* | Merge branch 'obsd-master' into masterThomas Adam2021-08-14
|\|
| * Change focus to be driven by events rather than walking all panes at endnicm2021-08-13
| | | | | | | | | | of event loop, this way the ordering of in and out can be enforced. GitHub issue 2808.
* | Merge branch 'obsd-master' into masterThomas Adam2021-08-12
|\|
| * Break the colour palette into a struct rather than just a single arraynicm2021-08-11
| | | | | | | | | | | | and use that to support the OSC palette-setting sequences in popups. Also add a pane-colours array option to specify the defaults. GitHub issue 2815.
| * Change resize timers and flags into one timer and a queue which isnicm2021-06-10
| | | | | | | | | | simpler and fixes problems with vim when resized multiple times. GitHub issue 2677.
| * Include current client in size calculation for new sessions, GitHubnicm2021-06-10
| | | | | | | | issue 2662.
* | Change resize timers and flags into one timer and a queue to fix problems withNicholas Marriott2021-04-28
| | | | | | | | vim when resized multiple times. GitHub issue 2677.
* | Include current client in size calcultion for new sessions, GitHub issue 2662.Nicholas Marriott2021-04-21
| |
* | Merge branch 'obsd-master' into masterThomas Adam2021-03-11
|\|
| * Add split-window -Z to start the pane zoomed, GitHub issue 2591.nicm2021-03-11
| |
* | Merge branch 'obsd-master' into masterThomas Adam2021-02-22
|\|
| * There are many format variables now so allocating all the default onesnicm2021-02-22
| | | | | | | | | | | | | | | | each time a tree is created is too expensive. Instead, convert them all into callbacks and put them in a static table so they only allocate on demand. The tree remains for the moment for extra (non-default) variables added by for example copy mode or popups. Also reduce expensive calls to localtime_r/strftime. GitHub issue 2253.
* | Merge branch 'obsd-master' into masterThomas Adam2021-01-20
|\|
| * Change so that window_flags escapes # automatically which means configsnicm2021-01-20
| | | | | | | | | | will not have to change. A new format window_raw_flags contains the old unescaped version.
* | Merge branch 'obsd-master' into masterThomas Adam2020-12-15
|\|
| * Make synchronize-panes a pane option and add -U flag to set-option tonicm2020-12-15
| | | | | | | | unset an option on all panes. GitHub issue 2491 from Rostislav Nesin.
* | Merge branch 'obsd-master'Thomas Adam2020-06-13
|\|
| * Add -b flags to insert a window before (like the existing -a for after)nicm2020-06-13
| | | | | | | | to break-pane, move-window, new-window. GitHub issue 2261.
* | Merge branch 'obsd-master'Thomas Adam2020-06-05
|\|
| * Change how panes are resized so that the code is clearer and if the panenicm2020-06-05
| | | | | | | | | | | | is resized multiple times during one event loop, it is forced to resize at the end. Also don't zoom/unzoom in switch-client if the pane hasn't changed. GitHub issue 2260.
* | Merge branch 'obsd-master'Thomas Adam2020-06-01
|\|
| * Instead of sending all data to control mode clients as fast as possible,nicm2020-06-01
| | | | | | | | | | | | add a limit of how much data will be sent to the client and try to use it for panes with some degree of fairness. GitHub issue 2217, with George Nachman.
* | Merge branch 'obsd-master'Thomas Adam2020-05-21
|\|
| * Support code for control mode flow control: allow clients to havenicm2020-05-21
| | | | | | | | | | | | separate offsets (used and acknowleged) into the pane buffers; turn off reading from panes when no clients can accept the data; and add a -A flag to refresh-client to let clients turn receiving a pane on and off.
| * Move lazy resize from the pane to the window, there is no point innicm2020-05-16
| | | | | | | | | | | | resizing the window unless it is the current window, and if we do and don't resize the pane until later there are problems if the size changes from A to B then back to A.
| * Do not hoke into struct window_pane from the tty code and instead setnicm2020-05-16
| | | | | | | | | | | | | | everything up in tty_ctx. Provide a way to initialize the tty_ctx from a callback and use it to let popups draw directly through input_parse in the same way as panes do, rather than forcing a full redraw on every change.
| * Drop having a separate type for style options and make them all strings,nicm2020-05-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | which allows formats to be expanded. Any styles without a '#{' are still validated when they are set but any with a '#{' are not. Formats are not expanded usefully in many cases yet, that will be changed later. To make this work, a few other changes: - set-option -a with a style option automatically appends a ",". - OSC 10 and 11 don't set the window-style option anymore, instead the fg and bg are stored in the pane struct and act as the defaults that can be overridden by window-style. - status-fg and -bg now override status-style instead of trying to keep them in sync.
| * Use a grid cell not a style for the pane style.nicm2020-05-16
| |
* | Move lazy resize from the pane to the window, there is no point in resizing theNicholas Marriott2020-05-16
| | | | | | | | | | window unless it is the current window, and if we do and don't resize the pane until later there are problems if the size changes from A to B then back to A.
* | Separate key flags and modifiers, log key flags, make the "xterm" flag moreNicholas Marriott2020-05-15
| | | | | | | | explicit and fix M- keys with a leading escape.
* | Do not hoke into struct window_pane from the tty code and instead setNicholas Marriott2020-05-01
| | | | | | | | | | | | everything up in tty_ctx. Provide a way to initialize the tty_ctx from a callback and use it to let popups draw directly through input_parse in the same way as panes do, rather than forcing a full redraw on every change.
* | Need to redraw borders now when some things change. Also change default so thatNicholas Marriott2020-04-29
| | | | | | | | the active border colour is different in a mode or with synchronize-panes on.
* | Drop having a separate type for style options and make them all strings, whichNicholas Marriott2020-04-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | allows formats to be expanded. Any styles without a '#{' are still validated when they are set but any with a '#{' are not. Formats are not expanded usefully in many cases yet, that will be changed later. To make this work, a few other changes: - set-option -a with a style option automatically appends a ",". - OSC 10 and 11 don't set the window-style option anymore, instead the fg and bg are stored in the pane struct and act as the defaults that can be overridden by window-style. - status-fg and -bg now override status-style instead of trying to keep them in sync.
* | Use a grid cell not a style for the pane style.Nicholas Marriott2020-04-27
| |
* | Merge branch 'obsd-master'Thomas Adam2020-04-14
|\|
| * Make client -c and -t handling common in cmd-queue.c and try to benicm2020-04-13
| | | | | | | | | | clearer about whether the client is the target client (must have a session) or not.
* | Merge branch 'obsd-master'Thomas Adam2020-04-13
|\|
| * Also move cmdq_item and cmdq_list into cmd-queue.c (this is to make itsnicm2020-04-13
| | | | | | | | use more clearly defined and preparation for some future work).
* | Merge branch 'obsd-master'Thomas Adam2020-04-13
|\|
| * Now that copy mode copies the pane content rather than keeping anicm2020-04-10
| | | | | | | | | | | | | | | | | | | | reference to it, it isn't necessary that the pane in copy mode is the same as the one copying from. Add a -s flag to copy-mode to specify a different pane for the source content. This means it is possible to view two places in a pane's history at the same time in different panes, or copy from a pane's history into an editor or shell in the same pane. From Anindya Mukherjee.
* | Merge branch 'obsd-master'Thomas Adam2020-04-09
|\|
| * Pass correct flags to fnmatch.nicm2020-04-09
| |
* | Merge branch 'obsd-master'Thomas Adam2020-04-06
|\|
| * Change copy mode to make copy of the pane history so it does not need tonicm2020-04-06
| | | | | | | | | | | | freeze updates (which does not play nicely with some applications, a longstanding problem) and will allow some other changes later. From Anindya Mukherjee.