Ryan Dwyer
32b865e610
Fix crash when deleting last child in a tabbed or stacked container
...
There was no `current` child because the container was destroyed. This
makes it fall back to looking in the parent's current children list.
7 years ago
Ryan Dwyer
38398e2d77
Implement atomic layout updates for tree operations
...
This implements atomic layout updates for when views map, reparent or
unmap.
7 years ago
Ryan Dwyer
1c89f32533
Preserve buffers during transactions
...
* Also fix parts of the rendering where it was rendering the pending
state instead of current.
7 years ago
Ryan Dwyer
645bf446fa
Merge remote-tracking branch 'upstream/master' into atomic
7 years ago
emersion
088cae45c8
Update for swaywm/wlroots#1060
7 years ago
Ryan Dwyer
9e96cfd310
Merge remote-tracking branch 'upstream/master' into atomic
7 years ago
emersion
cfd02918c0
Render drag icons
7 years ago
emersion
88cd7616db
Fix compilation errors related to disabled outputs
7 years ago
Ryan Dwyer
bb66e6d578
Refactor everything that needs to arrange windows
...
* 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.
7 years ago
Ryan Dwyer
f9e6d703d2
Make main properties be the pending state
7 years ago
Ryan Dwyer
59c9488701
WIP: Atomic layout updates ground work
7 years ago
Brian Ashworth
e072fbc6d9
Switch output storing from list_t to wl_list
7 years ago
Brian Ashworth
a0bbe67076
Address emersions comments on output re-enabling
7 years ago
Brian Ashworth
a1b5b93d29
Store sway_outputs so that they can be reenabled
7 years ago
emersion
0f71547032
Merge pull request #2095 from emersion/fullscreen-damage-only-visible
...
Only send frame to visible surfaces when fullscreened
7 years ago
Ryan Dwyer
1206a60977
Don't restore focus if unmapping surface wasn't focused
7 years ago
Ryan Dwyer
9253278328
Restore focus when unmapping layer shell surfaces
7 years ago
Ryan Dwyer
74799937cf
Restore focus when unmapping unmanaged xwayland surfaces
7 years ago
emersion
55b855d867
Add SWAY_DAMAGE_DEBUG
...
Setting it to "rerender" will always re-render everything
regardless of the damaged region. Setting it to "highlight" will
clear the screen and render only damaged regions.
7 years ago
emersion
34bdf25bb5
Only send frame to visible surfaces when fullscreened
7 years ago
emersion
51eee3aecc
Schedule a frame even if damage is empty
7 years ago
emersion
65845be802
Only send frame done to visible views
...
Also don't accumulate empty damage
7 years ago
Ryan Dwyer
d466b8fa7b
Don't auto float xdg views if their dimensions are not set
7 years ago
Ryan Dwyer
c9e3a313b4
Fix fullscreen position of xwayland views
7 years ago
Ryan Dwyer
9119f87655
Fix floating position when view is floated when mapped
7 years ago
Ryan Dwyer
97672295ed
Don't unmaximize floating views
7 years ago
Ryan Dwyer
becceafa7f
Remove unfinished wants_floating implementation for xwayland
7 years ago
Ryan Dwyer
5b1601c2e3
Don't let xwayland views set position unless unmanaged
7 years ago
Ryan Dwyer
02d385e06f
Use swayc rather than wlr_output when rendering
7 years ago
Ryan Dwyer
3b1db30a5e
Use surface size if xdg shell's geometry isn't set
7 years ago
Ryan Dwyer
4371c746e4
Implement wants_floating for xdg_shell and xdg_shell_v6
7 years ago
Ryan Dwyer
3281574fa3
Remove check for if floating view intersects output
7 years ago
Ryan Dwyer
7d2b33a458
Render floating views before top layer and unmanaged
7 years ago
Ryan Dwyer
e4e912ea91
Store swayc coordinates as layout-local
7 years ago
Ryan Dwyer
02de2a6f65
Rename set_maximized functions to set_tiled
7 years ago
Ryan Dwyer
dc83b158e1
Fix issues with sticky containers and workspaces
...
* 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.
7 years ago
Ryan Dwyer
754cb7944c
Respect view's border config for floating containers
7 years ago
Ryan Dwyer
aaba7642b3
Replace is_floating boolean with function
7 years ago
Ryan Dwyer
34f35f0bad
Use L_FLOATING instead of reapable boolean
7 years ago
Ryan Dwyer
1f2e399ade
Implement floating
7 years ago
Drew DeVault
71db8de4be
Render floating views
7 years ago
Brian Ashworth
205a1732cf
Force fullscreen views to be fully opaque
7 years ago
emersion
b350e8ec82
xdg-shell: make all toplevels tiled
7 years ago
Ryan Dwyer
f6c3682c05
Use constants for titlebar dimensions
7 years ago
Ryan Dwyer
664169fbf1
Implement stacked layout
7 years ago
Ryan Dwyer
048b29527b
Pre-multiply alpha for tab decorations
7 years ago
Ryan Dwyer
90607dc329
Add left/right borders to tabs
7 years ago
Ryan Dwyer
5ab4930185
Fix tab border issues
7 years ago
Ryan Dwyer
efc07fb3d4
Don't track damage for views on inactive tabs
7 years ago
Ryan Dwyer
c08f9bf257
Implement tabbed layout
7 years ago