aboutsummaryrefslogtreecommitdiff
path: root/sway/tree
AgeCommit message (Collapse)Author
2018-06-27Fix nitpicksRyan Dwyer
2018-06-26Remove incorrect assertion and supporting codeRyan Dwyer
Children can exist when destroying a container, such as when destroying the last output. Sway is not terminating in that case.
2018-06-26Fix crash when closing output window from outer sessionRyan Dwyer
Emitting the close event needs to happen before container_output_destroy, because container_output_destroy sets the sway_output to NULL and sway_output is used in IPC.
2018-06-26Fix crash when disconnecting outputRyan Dwyer
We were freeing the sway_output immediately upon disconnect which left a dangling pointer in the output's container. It then tried to use the pointer when the container is freed. We don't need to store the sway_output in an output's container which is destroying, so the fix is to set the pointer to NULL and remove the use in container_free. Also added an arrange when the output is disconnected for good measure.
2018-06-26Rename view's free callback to destroyRyan Dwyer
2018-06-26Damage output when a fullscreen view unmapsRyan Dwyer
Also moved the arranging into view_unmap to avoid excessive code duplication.
2018-06-25Fix potential crash when fullscreen view unmapsRyan Dwyer
It happened when a view is a grandchild or deeper of the workspace, is fullscreen, and unmaps. The workspace would not be included in the transaction and its pointer to the fullscreen view was left dangling.
2018-06-24Fix another crash when moving out of stacks or tabsRyan Dwyer
2018-06-24Fix crash when unmapping a view with reapable parentsRyan Dwyer
container_destroy was calling container_reap_empty, which calls container_destroy and so on. Eventually the original container_destroy would return a NULL pointer to the caller which caused a crash. This also fixes an arrange on the wrong container when moving views in and out of stacks.
2018-06-23Implement atomic layout updates for tree operationsRyan Dwyer
This implements atomic layout updates for when views map, reparent or unmap.
2018-06-18Preserve buffers during transactionsRyan Dwyer
* Also fix parts of the rendering where it was rendering the pending state instead of current.
2018-06-11Merge remote-tracking branch 'upstream/master' into atomicRyan Dwyer
2018-06-09Merge pull request #2124 from emersion/drag-iconsDrew DeVault
Render drag icons
2018-06-09Implement gaps (PR #2047)Nate Symer
2018-06-09Render drag iconsemersion
2018-06-09Refactor everything that needs to arrange windowsRyan Dwyer
* The arrange_foo functions are now replaced with arrange_and_commit, or with manually created transactions and arrange_windows x2. * The arrange functions are now only called from the highest level functions rather than from both high level and low level functions. * Due to the previous point, view_set_fullscreen_raw and view_set_fullscreen are both merged into one function again. * Floating and fullscreen are now working with transactions.
2018-06-09Make main properties be the pending stateRyan Dwyer
2018-06-09WIP: Atomic layout updates ground workRyan Dwyer
2018-06-08Switch restore workspaces to a nested for-loopBrian Ashworth
2018-06-08Restore workspaces to outputs based on priorityBrian Ashworth
2018-06-07Merge pull request #2084 from RedSoxFan/runtime-var-expansionemersion
Runtime variable expansion
2018-06-06Switch output storing from list_t to wl_listBrian Ashworth
2018-06-06Address emersions comments on output re-enablingBrian Ashworth
2018-06-06Store sway_outputs so that they can be reenabledBrian Ashworth
2018-06-06Remove tab/stack check for focusing after a splitBrian Ashworth
2018-06-06Fix focusing after splitting tabs/stacksBrian Ashworth
2018-06-05Support runtime var expansion and set at runtimeBrian Ashworth
2018-06-05Fix movement crashes/issuesBrian Ashworth
2018-06-03Fix initial workspace orientation on a rotated outputRyan Dwyer
2018-06-03Merge pull request #2096 from kupospelov/fix-title-updateemersion
Fix view title update order
2018-06-03Fix potential crash when destroying workspaceRyan Dwyer
`_container_destroy` emits a destroy event, and any listener for this event should have access to the full container, not a half destroyed one. `_container_destroy` also destroys the swayc, so we have to grab a reference to the sway_workspace so we can free it afterwards. This also fixes a memory leak where the floating container wasn't freed. Fixes #2092.
2018-06-03Fix view title update orderKonstantin Pospelov
This commit fixes the function call order to make sure that the title texture is updated using the relevant global font size.
2018-06-02Fix top border when a view is initially floatingRyan Dwyer
Fixes #2085.
2018-06-01Fix mpv damage issue when unfullscreening into floatingRyan Dwyer
2018-06-01Fix fullscreen positionRyan Dwyer
2018-06-01Don't unmaximize floating viewsRyan Dwyer
2018-06-01Fix getting adjacent outputRyan Dwyer
2018-06-01Remove container_self_or_parent_floatingRyan Dwyer
2018-06-01Rename container_set_geometry_from_viewRyan Dwyer
2018-06-01Store swayc coordinates as layout-localRyan Dwyer
2018-06-01Rename set_maximized functions to set_tiledRyan Dwyer
2018-06-01Fix issues with sticky containers and workspacesRyan Dwyer
* Attach sticky containers to new workspaces when switching * Fire the close event *before* we start destroying the workspace to prevent a crash Because the sticky container now follows the visible workspace, this simplifies the rendering and container_at logic.
2018-06-01Fix unfullscreening a floating viewRyan Dwyer
2018-06-01Replace is_floating boolean with functionRyan Dwyer
2018-06-01Use L_FLOATING instead of reapable booleanRyan Dwyer
2018-06-01Implement floatingRyan Dwyer
2018-06-01Implement `floating enable`Drew DeVault
2018-06-01Merge pull request #2081 from RedSoxFan/fix-2077emersion
Send reparent events in container_split
2018-06-01Fix move perpendicular segfaultBrian Ashworth
2018-05-31Send reparent events in container_splitBrian Ashworth