summaryrefslogtreecommitdiffstats
path: root/layout.c
AgeCommit message (Collapse)Author
2010-07-02Sync OpenBSD patchset 732:Tiago Cunha
Custom layouts. list-windows command displays the layout as a string (such as "bb62,159x48,0,0{79x48,0,0,79x48,80,0}") and it can be applied to another window (with the same number of panes or fewer) using select-layout.
2010-01-08Sync OpenBSD patchset 604:Tiago Cunha
New command, join-pane, to split and move an existing pane into the space (like splitw then movep, or the reverse of breakp).
2009-12-04Sync OpenBSD patchset 581:Tiago Cunha
Massive spaces->tabs and trailing whitespace cleanup, hopefully for the last time now I've configured emacs to make them displayed in really annoying colours...
2009-07-20Sync OpenBSD patchset 142:Tiago Cunha
Each window now has a tree of layout cells associated with it. In this tree, each node is either a horizontal or vertical cell containing a list of other cells running from left-to-right or top-to-bottom, or a leaf cell which is associated with a pane. The major functional changes are: - panes may now be split arbitrarily both horizontally (splitw -h, C-b %) and vertically (splitw -v, C-b "); - panes may be resized both horizontally and vertically (resizep -L/-R/-U/-D, bound to C-b left/right/up/down and C-b M-left/right/up/down); - layouts are now applied and then may be modified by resizing or splitting panes, rather than being fixed and reapplied when the window is resized or panes are added; - manual-vertical layout is no longer necessary, and active-only layout is gone (but may return in future); - the main-pane layouts now reduce the size of the main pane to fit all panes if possible. Thanks to all who tested.
2009-07-15Get 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-05-18main-horizontal layout and main-pane-height option to match vertical.Nicholas Marriott
2009-05-18left-vertical -> main-vertical.Nicholas Marriott
Also update CHANGES/TODO.
2009-05-18New option main-pane-width to set width of pane in left-vertical mode.Nicholas Marriott
2009-05-18horizontal -> h, vertical -> v, to shorten some function names a little.Nicholas Marriott
2009-05-18Behave properly when resize not supported.Nicholas Marriott
2009-05-18manual -> manual-vertical.Nicholas Marriott
2009-05-18Clean up manual layout code:Nicholas Marriott
- change the one layout function into two _refresh and _resize - create layout-manual.c for manual layout code - move the fit panes/update panes code from window.c to the new file as it is only used by manual layout now - move the resize pane code into layout-manual.c as well - get rid of the direct calls to fit/update and make them go through layout - rename a couple of variables This is mainly as a first step before reworking the manual layout code to see if anything breaks.
2009-05-16select-layout command and some key bindings.Nicholas Marriott
2009-05-04Space trimmage mega-diff.Nicholas Marriott
2009-04-30previous-layout command.Nicholas Marriott
2009-04-30Display the layout name in window lists.Nicholas Marriott
2009-04-01- Allow switching to hidden windows (for active-only layout).Nicholas Marriott
- Don't update unnecessarily for other layouts when changing active pane doesn't matter.
2009-04-01Handle 0 panes better.Nicholas Marriott
2009-04-01Basic horizontal splitting and layout management. Still some redraw and otherNicholas Marriott
issues - particularly, don't mix with manual pane resizing and be careful when viewing from multiple clients; generally cycling the layout a few times will fix most problems. Getting this in for testing while I think about how to deal with manual mode. Split window as normal and cycle the layouts with C-b space. Some of the layouts will work better when swap-pane comes along.