aboutsummaryrefslogtreecommitdiff
path: root/sway/layout.c
AgeCommit message (Collapse)Author
2016-10-11generalize wrapping views under workspacesD.B
2016-10-11add workspace_layout, ensure ws is always L_HORIZD.B
Add swayc_change_layout function, which changes either layout or workspace_layout, depending on the container type. Workspace being always L_HORIZ makes this much more i3-compatible.
2016-10-07Fix creating of sibling floating/childrenNicolas Cornu
If we want to add a sibling of different type than current container it failed. Because we add it to the wrong list
2016-10-07add focus changing between floating containersD.B
It will also wrap if needed.
2016-10-07add force_focus_wrapping optionD.B
2016-10-07wrap container in direction (if possible)D.B
Introduces container wrapping - if there is no other viable move, the selection wraps on the first container where such action is possible.
2016-09-21add unique IDs to containersZandr Martin
2016-09-17add global `current_focus` pointerZandr Martin
2016-09-05Make it possible to move views between outputsMikkel Oscar Lyderik
This patch makes it possible to move views between outputs using the `move left|right|up|down` commands. It behaves similar to i3 with one important difference. The focus will always follow the view being moved, unlike i3 where the focus doesn't always follow the view to a new output (I assume that's a bug in i3).
2016-09-02Correct `hide_edge_borders` commandLukas Lihotzki
`vertical` and `horizontal` should be swapped. If border_left and border_right were set to 0, the vertical borders instead of the horizontal borders would be hidden. i3 handles this command equally.
2016-09-01Reorganize includesDrew DeVault
2016-08-07Sort workspaces when moving workspace to outputD.B
This should fix #839
2016-07-31Refactor functions to update container bordersTony Crisci
Replace `update_view_border()` with `update_container_border()`. The latter should handle both the case where the container is a view or if the container has children.
2016-07-30revert border hiding to more recent versionD.B
2016-07-30properly hide top border inside tabbed/stackedD.B
When titlebar is hidden, top border of the topmost view inside tabbed/stacked container will not be drawn. This is changed in layout.c On the other hand, top border should be drawn sometimes, for example when titlebar is hidden on a view that is not the topmost inside tabbed/stacked container. This is changed in border.c
2016-07-28Update hidpi support to latest wlc APIDrew DeVault
2016-07-28Initial pass on HiDPI supportDrew DeVault
2016-07-28Merge pull request #793 from thejan2009/workspace_layout_first_window_fixDrew DeVault
bugfix: invisible windows on empty workspace with tabbed/stacked layout
2016-07-28bugfix: windows on empty workspaces with layout tabbed/stacked would spawn ↵D.B
with 0x0 geometry
2016-07-27Implement `focus child` commandTony Crisci
The `focus child` command focuses the child container within the selected container.
2016-07-22properly hide bottom and right bordersD.B
2016-07-21fix regression in hide_edge_bordersZandr Martin
2016-07-21rename ws to workspace for clarityD.B
2016-07-21calculate borders for hiding from workspace geometryD.B
2016-07-21Arrange backgrounds only when requiredMykyta Holubakha
2016-07-21Initial work on window eventsMykyta Holubakha
2016-07-18Move backgrounds to back after arrange_windowsDrew DeVault
Fixes #769
2016-07-16refactor swayc_tabbed_stacked_parent into _ancestor and _parent and use ↵D.B
where needed
2016-07-04implement `get_tree` commandZandr Martin
2016-06-02redo smart_gaps/hide_edge_borders fixZandr Martin
2016-05-18Fix issue #661.Jasen Borisov
Borders are now drawn correctly (same behavior as i3) for tabbed and stacked containers, when the children have 'border none' set.
2016-04-29Fix uninitialized variableMikkel Oscar Lyderik
2016-04-27border: clear buffer on fullscreen viewsMikkel Oscar Lyderik
This patch makes sure to clear the border buffer of fullscreen view so the border doesn't get drawn behind a fullscreen view, which would be visible if the view was transparent.
2016-04-25Remove commented codeMikkel Oscar Lyderik
2016-04-25Use correct geometry for nested containersMikkel Oscar Lyderik
2016-04-25Disable inner gaps when in tabbed/stacked modeMikkel Oscar Lyderik
2016-04-25Add support for nested tabbed/stacked containersMikkel Oscar Lyderik
2016-04-25Make floating border fixes work with tabbed/stacked codeMikkel Oscar Lyderik
2016-04-25Improve move command with tabbed/stacked layoutMikkel Oscar Lyderik
2016-04-25Correctly determine default layoutMikkel Oscar Lyderik
2016-04-25Fix problems with floating windowsMikkel Oscar Lyderik
Makes any tabbed/stacked layout a container to separate from floating windows which may be attached to a workspace.
2016-04-25Tabbed and stacked layoutMikkel Oscar Lyderik
2016-04-16Remove clang warnings (-Wsign-compare)Mikkel Oscar Lyderik
2016-04-03Fix window borderscrondog
This fixes floating borders when moving outside of the output. Not sure what happens with dual screen as I only have 1 monitor
2016-04-02Fix spelling mistakesEric Engestrom
2016-03-31Correctly reset border geometryMikkel Oscar Lyderik
2016-03-30Fix borders with floating windowsMikkel Oscar Lyderik
2016-03-30Implement bordersMikkel Oscar Lyderik
The borders are implemented as a surface/buffer attached to each view which is sent to and rendered by wlc in the view_pre_render callback. All the drawing logic is handled in sway/border.c and all the logic for calculating the geometry of the border/view is handled in `update_geometry` in sway/layout.c (same place as gaps are calculated).
2016-03-30Implement some more on bordersDrew DeVault
Note that this segfaults ALL THE TIME in wlc code. Paging @Cloudef for help, I'm at a loss.
2016-03-20Implement 'smart_gaps' feature from i3-gapsMikkel Oscar Lyderik