summaryrefslogtreecommitdiff
path: root/sway/tree/view.c
AgeCommit message (Collapse)Author
2018-07-17Remove superfluous IPC urgent eventsRyan Dwyer
When an xwayland view is mapped, the IPC urgent event was being sent on every surface commit. I had intentionally ommitted the check because I figured an urgent surface could update its urgent timestamp by sending urgent a second time. But that's not how it works in xwayland's case, and it makes for more complicated code.
2018-07-17Implement default_floating_border command and adjust CSD behaviourRyan Dwyer
2018-07-16Merge pull request #2276 from RyanDwyer/urgencyDrew DeVault
Implement urgency base functionality
2018-07-16Focus view before running criteria when mappingRyan Dwyer
2018-07-16Implement no_focus commandRyan Dwyer
2018-07-16Update workspace urgent state when views close or move workspacesRyan Dwyer
2018-07-16Fix urgency IPC eventsRyan Dwyer
2018-07-16Implement urgency base functionalityRyan Dwyer
Introduces a command to manually set urgency, as well as rendering of urgent views, sending the IPC event, removing urgency after focused for one second, and matching urgent views via criteria.
2018-07-14Simplify transactions by utilising a dirty flag on containersRyan Dwyer
This PR changes the way we handle transactions to a more simple method. The new method is to mark containers as dirty from low level code (eg. arranging, or container_destroy, and eventually seat_set_focus), then call transaction_commit_dirty which picks up those containers and runs them through a transaction. The old methods of using transactions (arrange_and_commit, or creating one manually) are now no longer possible. The highest-level code (execute_command and view implementation handlers) will call transaction_commit_dirty, so most other code just needs to set containers as dirty. This is done by arranging, but can also be done by calling container_set_dirty.
2018-07-12Don't disable borders for xwayland floating viewsemersion
2018-07-11Updates for swaywm/wlroots#1116emersion
2018-07-11Implement floating_minimum_size and floating_maximum_sizeRyan Dwyer
2018-07-09Update for swaywm/wlroots#1126emersion
2018-07-07Fix titles when container titles contain UTF-8 charactersRyan Dwyer
The title and marks textures would have their height set from the config's computed max font height, but the textures were not regenerated when the config's max font height changed which made a gap appear. Rather than making it regenerate the title textures every time the config font height was changed, I've changed it to just make the textures the height of the title itself and fill any gap when rendering. Also, the title_width and marks_width variables have been renamed to make it more obvious that they are in output-buffer-local coordinates. Fixes #1936.
2018-07-06Make view_update_* update live props as wellemersion
2018-07-05view_map: free criterias as the list it isDominique Martinet
2018-07-05Call view_set_tiled for mapping non-floating viewsRyan Dwyer
Fixes #2209.
2018-07-04Only call view_set_tiled when switching floating modeRyan Dwyer
Otherwise it repeatedly sets the view's border to the config's default.
2018-07-01Implement pid->workspace trackingDrew DeVault
When you spawn a process with the exec command, sway now notes the workspace you had focused and the pid of the child process, then assigns that workspace to the child when its window appears. Some of this is carried over from sway 0.15, but with some major refactoring and centralization of state.
2018-06-30sway views: add helpers to get view and layer from wlr_surfaceDominique Martinet
2018-06-30Merge remote-tracking branch 'upstream/master' into atomicRyan Dwyer
2018-06-30Revert "Don't unmaximize floating views"Rostislav Pehlivanov
This reverts commit 97672295ed50d1d6272876c4a3b6b5607cab05c6.
2018-06-30Fix floating views not receiving frame eventsemersion
That happened when they were in tabbed or stacked containers. Fixes #2161
2018-06-27Move unsetting of view->surface into view_unmapRyan Dwyer
2018-06-27Remove transaction_add_damageRyan Dwyer
Instead, damage each container when applying the transaction.
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-23Implement atomic layout updates for tree operationsRyan Dwyer
This implements atomic layout updates for when views map, reparent or unmap.
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-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-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 unfullscreening a floating viewRyan Dwyer
2018-06-01Replace is_floating boolean with functionRyan Dwyer
2018-06-01Implement floatingRyan Dwyer
2018-05-28Refactor parse_title_formatRyan Dwyer
Don't read properties until needed, and do it with less lines of code.
2018-05-27Rename view_get_type to view_get_shellRyan Dwyer
2018-05-27Add %app_id to title_formatRyan Dwyer
2018-05-25Merge pull request #2036 from RyanDwyer/workspace-switch-on-mapDrew DeVault
Switch workspace if required when mapping a view
2018-05-25Switch workspace if required when mapping a viewRyan Dwyer
If a view is created on a workspace that wasn't visible, switch to it. Fixes #1879.
2018-05-25Clean up container title functionsRyan Dwyer
* Add and use lenient_strcat and lenient_strncat functions * Rename `concatenate_child_titles` function as that's no longer what it does * Rename `container_notify_child_title_changed` because we only need to notify that the tree structure has changed, not titles * Don't notify parents when a child changes its title * Update ancestor titles when changing a container's layout * Eg. create nested tabs and change the inner container to stacking * No need to store tree presentation in both container->name and formatted_title
2018-05-22Use constants for titlebar dimensionsRyan Dwyer