Drew DeVault
b12b848bdc
Merge pull request #1759 from emersion/output-send-frame-done
...
Don't send frame done immediately when rendering
7 years ago
emersion
8af0c2b000
Don't send frame done immediately when rendering
7 years ago
emersion
33b4f945ab
Fix inverted assertion
...
Seems like it doesn't work this way
7 years ago
Drew DeVault
c47b4d4edb
Merge pull request #1756 from emersion/output-damage
...
Fine-grained damage tracking
7 years ago
Drew DeVault
f5a9bd5cb7
Merge pull request #1700 from swaywm/move-cmd-full
...
Implement move [left|right|up|down]
7 years ago
emersion
93ca8919f6
Don't rejigger if parent has two children
7 years ago
emersion
37b173f326
When moving between outputs, use output center as reference
7 years ago
Drew DeVault
606d322bc2
Container coordiantes/sizes are floating point
7 years ago
Drew DeVault
640232eb22
Revert "Break everything^W^WUse wlr_box for sway_container"
7 years ago
emersion
0c627918bb
Damage all surfaces when damaging whole container
7 years ago
Drew DeVault
df0d57b916
Fix issue with incorrectly rejiggered workspaces
7 years ago
Drew DeVault
764489e737
Break everything^W^WUse wlr_box for sway_container
7 years ago
Drew DeVault
9109b1fd11
Fix moving to parallel container on another output
7 years ago
Drew DeVault
5ff16994c5
Address @emersion feedback
7 years ago
emersion
58914822aa
Don't damage the whole output
7 years ago
Drew DeVault
c8be7bfc1e
Fix another of @orestisf1993's issues
7 years ago
emersion
e550e22c0b
Refactor rendering code
7 years ago
Drew DeVault
1f70b94f34
Fix moving into right end of container
7 years ago
Drew DeVault
cd6e3182fa
Fix issues @orestisf1993 raised
7 years ago
Drew DeVault
b5baa78dc3
Address @emersion's comments
7 years ago
Drew DeVault
603e0e42c5
Add debug tree view
7 years ago
emersion
516f5454ad
Simplify damage tracking functions, use them in layer shell
7 years ago
emersion
290c916290
Send surface enter/leave events to view children
7 years ago
Drew DeVault
a06052ad9d
Fix splitting workspaces
7 years ago
Drew DeVault
efac07db5f
Fix workspaces not updated on swaybar
7 years ago
Drew DeVault
57954a2b24
Implement move [left|right|up|down]
...
The exact semantics of this command are complicated. I'll describe each
test scenario as s-expressions. Everything assumes L_HORIZ if not
specified, but if you rotate everything 90 degrees the same test cases
hold.
```
(container (view a) (view b focus) (view c))
-> move left
(container (view b focus) (view a) (view c))
(container (view a) (view b focus) (view c))
-> move right
(container (view a) (view c) (view b focus))
(container L_VERT (view a))
(container L_HORIZ
(view b) (view c focus))
-> move up
(container L_VERT
(view a) (view c focus))
(container L_HORIZ (view b))
(workspace
(view a) (view b focus) (view c))
-> move up
(workspace [split direction flipped]
(view b focus)
(container (view a) (view c)))
(workspace
(view a) (view b focus) (view c))
-> move down
(workspace [split direction flipped]
(container (view a) (view c))
(view b focus)))
Note: outputs use wlr_output_layout instead of assuming that i+/-1 is
the next output in the move direction.
(root
(output X11-1
(workspace 1))
(output X11-2
(workspace 1 (view a focus) (view b)))))
-> move left
(root
(output X11-1
(workspace 1 (view a focus)))
(output X11-2
(workspace 1 (view b)))))
(root
(output X11-1
(workspace 1
(container (view a) (view b)))
(output X11-2
(workspace 1 (view c focus)))))
-> move left
(root
(output X11-1
(workspace 1
(container (view a) (view b))
(view c focus)))
(output X11-2
(workspace 1)))
```
7 years ago
Drew DeVault
d77a0119f4
Avoid arranging windows while reloading config
7 years ago
Drew DeVault
cca420b2f8
Fix focus_follows_mouse issues
7 years ago
Drew DeVault
b08f7e5183
Fix deletion of still-visible workspaces on unfocus
7 years ago
emersion
88e3e5ea5d
Fix wl_output enter/leave events
...
Fixes #1739
7 years ago
emersion
c2b1beef15
Remove L_TYPES
7 years ago
emersion
254ca8103c
Merge pull request #1747 from acrisci/ipc-layout
...
ipc layout
7 years ago
Drew DeVault
f63d9417cd
Merge pull request #1743 from emersion/subsurface-damage-tracking
...
Damage tracking for view children
7 years ago
Tony Crisci
6b308dbeb7
address feedback
7 years ago
Tony Crisci
235798ff8e
dont send ipc events when there are no listeners
7 years ago
emersion
641807d920
Handle unmanaged surfaces motion
7 years ago
emersion
d65d001aa5
Fix desktop_damage_whole_surface
7 years ago
emersion
6b9b03f09f
Remove outdated TODO
7 years ago
emersion
076bedb85e
Add container_damage_whole
7 years ago
emersion
1c91d0c10f
Add damage tracking for xwayland unmanaged surfaces
7 years ago
Tony Crisci
bbfc5487bc
add layout to ipc containers
7 years ago
emersion
07f3bb3ad1
Handle xwayland configure requests for unmanaged surfaces
7 years ago
emersion
a528aea2ee
Make xwayland surface destroy more foolproof
7 years ago
emersion
7ce1038478
Fix xwayland unmanaged surfaces
7 years ago
emersion
f5e5b1819b
Track damage of xdg-shell-v6 popups
7 years ago
Drew DeVault
f242362e7e
Handle output removal on swaybar
7 years ago
emersion
45f93e1650
Accumulate damage from subsurfaces
7 years ago
Drew DeVault
94ecd0f0aa
Configure wlr_xdg_output_manager during init
7 years ago
emersion
dcd15a2d3d
Implement shell views
7 years ago
Drew DeVault
9e89daf213
Merge pull request #1734 from swaywm/resize-cmd
...
Implement resize command
7 years ago
Drew DeVault
f77986338f
Implement resize command
7 years ago
Tony Crisci
aa35715f4b
Merge pull request #1736 from acrisci/ipc-container-type
...
Ipc container type
7 years ago
Tony Crisci
04ce09630c
add type to container json
7 years ago
Tony Crisci
65f254f3fb
Merge branch 'wlroots' into fix-focus-inactive
7 years ago
Tony Crisci
deda37469a
fix focus child
7 years ago
emersion
44b8d30f52
Use new wlr_*_surface_at functions
7 years ago
emersion
8eff00f723
Remove unused SWAY_VIEW_TYPES
7 years ago
Tony Crisci
fc9398a42e
Implement opacity command
7 years ago
Tony Crisci
cfd806577b
fix sending window new event
7 years ago
Tony Crisci
3e61718053
try to fix focus-inactive
7 years ago
Drew DeVault
d2d050d59c
Address review feedback
7 years ago
Drew DeVault
b7e7794912
Implement input-inhibit in sway, swaylock
7 years ago
Drew DeVault
06fbd51ff5
Add input inhibitor to input manager
7 years ago
Drew DeVault
3ede718c06
Refocus the last focused container on lock exit
7 years ago
Tony Crisci
76b0f3531f
send window close event
7 years ago
Tony Crisci
62c79ef451
fix double free
7 years ago
Tony Crisci
741e3959e3
Merge branch 'wlroots' into split-containers2
7 years ago
Tony Crisci
9d1cbd77ac
simplify container close
7 years ago
emersion
f3ef1da750
Fix wrong output container coordinates
7 years ago
Tony Crisci
fa004dd0d7
move output create to its own file
7 years ago
Drew DeVault
deb63eda88
Merge pull request #1717 from emersion/fix-multiple-outputs
...
Fix rendering with multiple outputs
7 years ago
Tony Crisci
a001890fb8
move workspace create to workspace.c
7 years ago
Tony Crisci
97b171649d
move output damage to workspace destructor
7 years ago
emersion
c0554d23d3
Fix rendering with multiple outputs
7 years ago
Tony Crisci
035a88e0dc
rename container_finish to _container_destroy
7 years ago
Tony Crisci
481a8275c1
address feedback
7 years ago
emersion
5cd9457247
Send enter event to layer shell surfaces
7 years ago
Drew DeVault
1a5785b0c3
Merge pull request #1712 from RedSoxFan/workspace-number-names
...
Fix name generation from workspace number commands
7 years ago
Brian Ashworth
1e549230db
Fix name generation for workspace number <name>
7 years ago
Tony Crisci
a514fee1b9
rename workspace_get_initial_output
7 years ago
Tony Crisci
9b567fc37e
clean up container_get_default_layout
7 years ago
Tony Crisci
065887bb7b
move container_set_layout to layout.h
7 years ago
Tony Crisci
fcbcbf34ad
make container_finish private
7 years ago
Tony Crisci
5f4761c4f4
unify workspace create functions
7 years ago
Tony Crisci
cba258e16a
move output code out of the tree
7 years ago
Tony Crisci
09d448ea2d
unify container destroy functions
7 years ago
Tony Crisci
b4c5f79725
move view and workspace destructors to container.c
7 years ago
Tony Crisci
7afbe9284f
rename _container_destroy to container_finish
7 years ago
Tony Crisci
33006c4e64
dont deallocate in container_close
7 years ago
Tony Crisci
20f9d49b82
cleanup
7 years ago
Tony Crisci
2992b72d61
change reap container approach
7 years ago
Drew DeVault
0bf3b88019
Give layer shells under the shell layer focus
7 years ago
Drew DeVault
56078edd65
Give exclusive focus to layers above shell layer
7 years ago
Tony Crisci
2c165e1288
fix more close segfaults
7 years ago
Drew DeVault
623a08e14f
Identify topmost interactive layer post-arrange
7 years ago
Tony Crisci
32ef182f47
cleanup split command handlers
7 years ago
Tony Crisci
a89096278b
Merge branch 'wlroots' into split-containers
7 years ago
Tony Crisci
d434da5632
Merge branch 'wlroots' into split-containers
7 years ago
Tony Crisci
d070244362
fix workspace splits
7 years ago
emersion
a4a241697a
Merge branch 'wlroots' into view-redesign
7 years ago
emersion
0c0cc79282
Merge pull request #1699 from acrisci/seat-fixes
...
Seat fixes and cleanup
7 years ago
emersion
2f64ce86c4
Xwayland unmanaged views aren't views anymore
7 years ago
Drew DeVault
4134407fa9
Merge pull request #1690 from swaywm/i3bar-json
...
I3bar json
7 years ago
Tony Crisci
357a4401fa
address feedback
7 years ago
Tony Crisci
2187684bd0
Merge branch 'wlroots' into split-containers
7 years ago
Tony Crisci
c7a6524954
fix segfault
7 years ago
Tony Crisci
5e024278a6
Merge branch 'wlroots' into seat-fixes
7 years ago
Tony Crisci
22287b42bf
dont copy input config
7 years ago
emersion
2a8985a345
Merge pull request #1697 from RedSoxFan/back-and-forth
...
Fix back-and-forth workspace name saving for non-empty workspaces
7 years ago
Tony Crisci
35445b40a2
remove unused attachment config
7 years ago
Drew DeVault
e3689dd5a9
Fixes regarding @emersion's feedback
7 years ago
Drew DeVault
c507727ad2
Fix use-after-free with block hotspots
7 years ago
Tony Crisci
a82c107c76
80col
7 years ago
Drew DeVault
b2d871cfe2
Partially implement move command
...
Works:
- move [container|window] to workspace <name>
- Note, this should be able to move C_CONTAINER but this is untested
- move [workspace] to output [left|right|up|down|<name>]
Not implemented yet:
- move [left|right|up|down]
- move scratchpad
- move position
7 years ago
emersion
61fabede14
Address review comments
7 years ago
Tony Crisci
53bb7ea996
dont copy seat config on the seat
7 years ago
Tony Crisci
0828c77251
rename input-manager functions
7 years ago
Tony Crisci
e677c5b204
rename seat functions
7 years ago
Tony Crisci
b5d49cc4e8
remove default from kill switch
7 years ago
Tony Crisci
27e394f8b0
fix children list segfault
7 years ago
Tony Crisci
eda425fdab
fix some segfaults
7 years ago
emersion
1d68f9ecca
Add sway_view_impl
7 years ago
emersion
b2c2ee693b
Introduce common functions to create, map, unmap, destroy views
7 years ago
Tony Crisci
2aec85bf24
clean up view destroy seat cleanup
7 years ago
Tony Crisci
6f7b33e691
handle container destroy in the seat
7 years ago
Tony Crisci
e7ecb001d7
reap container parent on destroy
7 years ago
Tony Crisci
f7a20726fc
temporarily add LD_LIBRARY_PATH stuff
7 years ago
Tony Crisci
7706d83160
basic split containers
7 years ago
Drew DeVault
122b96abed
Merge pull request #1684 from swaywm/follow-warp
...
Implement focus_follows_mouse, mouse_warping
7 years ago
Drew DeVault
f2332dc75c
Address review feedback
7 years ago
emersion
8aedc042ee
Fix two segfaults when destroying outputs
7 years ago
Drew DeVault
b9d2983324
Fix interaction between warping and following
7 years ago
Drew DeVault
9b38ef950f
Implement focus_follows_mouse
...
Also contains two other small changes:
- Clicking any button will focus the container clicked (not just left)
- Remove seamless_mouse (doesn't make sense on wlroots)
7 years ago
Drew DeVault
ae6d459000
Implement mouse warping
7 years ago
Drew DeVault
89ca6676be
Merge pull request #1681 from emersion/xwayland-configure-position
...
Fix various xwayland issues
7 years ago
emersion
98b67e2399
Fix xwayland configure in set_size
7 years ago
Drew DeVault
a1e7ffd857
Merge pull request #1677 from emersion/maximize-xwayland-views
...
Maximize xwayland views by default
7 years ago
Brian Ashworth
c901510e01
Fixes back-and-forth name saving for non-empty ws
7 years ago
emersion
0f7936735c
Fix unmanaged views rendering on all outputs
7 years ago
emersion
6579717994
Fix xwayland configure position
7 years ago
Drew DeVault
eb5a8e03ff
Check for null container
7 years ago
Drew DeVault
e4fd47d3a1
Merge pull request #1682 from emersion/unmanaged-no-container
...
Make it clear that unmanaged views don't have a container
7 years ago
Drew DeVault
ccdcaa478f
Fix bug with previous commit
7 years ago
emersion
a44a71c116
Make it clear that unmanaged views don't have a container
...
view->swayc is NULL anyway.
7 years ago
Drew DeVault
8aa195e311
Fix #1104
7 years ago
Drew DeVault
5c08e13e50
Set Xwayland seat on focus
...
Necessary to make primary selection syncronize
7 years ago
Drew DeVault
ae0552606b
Configure linux_dmabuf, primary_selection
7 years ago
Drew DeVault
6a1a94b87c
Merge pull request #1678 from emersion/xwayland-xcursor
...
Set xwayland cursor
7 years ago
Drew DeVault
18173fb5ad
Free bar configs on reload and exit
7 years ago
emersion
b237fa0b22
Set xwayland cursor
7 years ago
emersion
5f3fce7519
Maximize xwayland views by default
7 years ago
Drew DeVault
212b503992
Use wlr_surface_point_accepts_input
7 years ago
Drew DeVault
f5470f3338
Pass pointer events to surface layers
7 years ago
emersion
9665642765
Merge branch 'wlroots' into client-cursors
7 years ago
Drew DeVault
1b88eaee6b
Merge pull request #1665 from emersion/damage-tracking-lite
...
Add lite damage tracking
7 years ago
Drew DeVault
e6fa7a722e
Merge pull request #1669 from emersion/workspace-pointer-events
...
Fix pointer events for hidden workspaces
7 years ago
emersion
139f80b0f0
Handle map/unmap events in xdg-shell-v6
7 years ago
emersion
3a68c012a9
Remove debug, add explicit TODO
7 years ago
emersion
50219564c2
Fix white screen due to bad cast
7 years ago
emersion
a776ecbb86
Add lite damage tracking
...
This skips the renderer if nothing has changed, and renders
everything otherwise.
7 years ago
Tony Crisci
7e0d430a0c
Merge branch 'wlroots' into wlroots-xwayland-map
7 years ago
emersion
eb716c6c43
Fix segfaults when focusing a workspace
7 years ago
emersion
03255fd202
Fix pointer events for hidden workspaces
7 years ago
Drew DeVault
88f08a42f3
Fix segfault when reaping invisible workspaces
7 years ago
Drew DeVault
b28e6d2369
IPC fixes
7 years ago
Drew DeVault
49379dd0fc
Fix workspace deletion edge cases
7 years ago
emersion
cf09ea184b
Use the new map/unmap events for xwayland views
7 years ago
Drew DeVault
a5e457d59a
Add xwayland views to focused container
7 years ago
emersion
1592543fd6
Merge pull request #1659 from swaywm/default-orientation
...
Add default_orientation command
7 years ago
Drew DeVault
b6b674fd76
Merge pull request #1657 from emersion/render-fixes
...
Misc minor fixes
7 years ago
emersion
681f38c878
Fix segfault on xwayland unmanaged view unmap
7 years ago
emersion
6c9d67b105
Handle set_cursor requests from clients
...
Allow clients to set a custom cursor if they have the seat's
pointer focus.
7 years ago
Drew DeVault
01af343912
Destroy empty workspaces when moving away
7 years ago
Drew DeVault
69eb021767
Add default_orientation command
7 years ago
emersion
28cb412b0d
Unify initial xwayland view mapping with map handler
7 years ago
emersion
981827ca42
Cleanup and remove global renderer reference
7 years ago
Drew DeVault
2d46050281
Fix crash when override redirect views close
7 years ago
Drew DeVault
e62cc0ac26
Finish porting over workspace_next_name
7 years ago
Drew DeVault
00d450e554
Use output coords for layer surfaces
...
This will need to be more carefully thought out when we get the
output_layout working entirely.
7 years ago
Drew DeVault
d6acb3d86c
Set WAYLAND_DISPLAY earlier in startup
7 years ago
Drew DeVault
f26ecd9f58
Merge remote-tracking branch 'origin/wlroots' into swaybar-layers
7 years ago
Tony Crisci
8f490d7d2d
Fix oversights from previous pull request
7 years ago
Tony Crisci
dc8c9fbeb6
Revert "Merge pull request #1653 from swaywm/revert-1647-refactor-tree"
...
This reverts commit 472e81f35d
, reversing
changes made to 6b7841b11f
.
7 years ago
Drew DeVault
d0c7f66e95
Revert "Refactor tree"
7 years ago
Drew DeVault
6b7841b11f
Merge pull request #1647 from acrisci/refactor-tree
...
Refactor tree
7 years ago
Tony Crisci
2778edef97
arrange windows
7 years ago
Tony Crisci
92c58b1e63
rename container_for_each_descendent
7 years ago
Drew DeVault
dbda7bfbed
Move declaration into loop
7 years ago
Drew DeVault
ddc09940b1
Exit ipc_get_workspace_callback early
7 years ago
Drew DeVault
8efee109ad
Implement modes
7 years ago
Drew DeVault
741424c4e7
Clean up imported bar commands
7 years ago
Drew DeVault
849c3515ab
Use statically allocated text buffer
7 years ago
Drew DeVault
c91adbd188
Fix failure to rearrange output in some cases
7 years ago
Drew DeVault
f3fbf19312
Do some small cleanup
...
- Fix workspace events (security config isn't in use so it wasn't being
sent)
- Kill status bar process when swaybar exits
- Don't rearrange windows on every layer surface commit
7 years ago
Drew DeVault
5f5076baff
Call arrange_windows on layer destroy
7 years ago
Drew DeVault
8b5b72c576
Restart swaybar on config reload
7 years ago
Drew DeVault
2e84f21ab7
Terminate swaybar when freeing bar config
7 years ago
Drew DeVault
2719ddfe5e
Spawn swaybars when outputs are added
7 years ago
Drew DeVault
5c9cdbcdd2
Add swaybg_command
7 years ago
Drew DeVault
569b2bfd5d
Move bar config into its own file
7 years ago
Drew DeVault
bf7a4cd0eb
Add bar configuration commands
7 years ago
Drew DeVault
6836074fed
Implement enough IPC for swaybar to work
7 years ago
Drew DeVault
a76829f375
Some layer shell fixes
...
Based on the corresponding rootston changes
7 years ago
Scott Anderson
c8e7437b82
Clear buffer after beginning renderer
7 years ago
Tony Crisci
4c394a0e9e
address feedback
7 years ago
Tony Crisci
4ec8bf4cee
80col
7 years ago
Tony Crisci
62d1b4cb96
fix container_get_in_direction name
7 years ago
Tony Crisci
e5491bf498
rename container destroy func
7 years ago
Tony Crisci
ed2cedb544
rename layout init
7 years ago
Tony Crisci
eca029f218
more renaming things
7 years ago
Tony Crisci
b90099b4b7
rename container functions
7 years ago
Drew DeVault
941ca5c8fd
Maximize xdg shell surfaces on creation
...
Makes them look better yo
In the future we might want to only do this for tiled windows, and let
floating windows do their own thing.
7 years ago
Tony Crisci
83d09cf594
remove swayc_t typedef
7 years ago
Tony Crisci
874f009866
move tree includes to their own directory
7 years ago
Drew DeVault
8d6bce02af
Address review feedback
7 years ago
Drew DeVault
68cfa7ef67
Render layer surfaces and respect exclusive zone
7 years ago
Drew DeVault
0c8a64942e
Add initial layer shell skeleton
7 years ago
Drew DeVault
1e604f3e35
Update input events per swaywm/wlroots#765
7 years ago
Drew DeVault
53df5889d5
Fix lingering xdg shell issues
7 years ago
Drew DeVault
cbb2e3308e
Update API to match latest wlroots
7 years ago
emersion
01beee5826
Update wlroots API
...
Breaking changes in wlr_xdg_shell_v6 and wlr_renderer have been
made upstream.
7 years ago
emersion
1004915796
Update rendering code for wlroots matrix redesign
7 years ago
emersion
4ab5506064
ipc: add output modes
7 years ago
Dominique Martinet
95963e4a1f
xwayland: do not send surface configure when no width/height
...
The code in apply_horiz_layout systematically does `set_position`
then `set_size`, so for new windows there is an invalid call.
For old windows there are two calls when only one is needed,
with the current code set_position could not send any surface
configure without impact, but in the future it might be needed?
Native wayland surfaces do not need to know where they are (the
set_position handled only updates the sway internal view variable),
why does X11 window need that?
7 years ago
Tony Crisci
02804584e5
ipc new window event
7 years ago
Drew DeVault
3c80498891
Utilize wlr_xwayland_surface_is_unmanaged
7 years ago
Tony Crisci
ad879c99e0
ipc show focused container
7 years ago
Drew DeVault
4b781356a4
Fix wlr_render_with_matrix call
...
This takes an alpha parameter now.
7 years ago
Drew DeVault
265378270a
Revert "Multiple output coords by scale"
...
This reverts commit 94f8bdf081
.
7 years ago
Drew DeVault
94f8bdf081
Multiple output coords by scale
7 years ago
Drew DeVault
8ad26c8afd
Send surface enter/leave events
7 years ago
Drew DeVault
61c1c3e7af
Use focus for new windows xwayland/wl_shell
7 years ago
Drew DeVault
669f91b991
Document updates to the output command
7 years ago
Tony Crisci
1cca3965f3
static bfs queue
7 years ago
Tony Crisci
2154b7c7d6
add config handlers
7 years ago
Tony Crisci
7262bf655f
remove checks for command handlers
7 years ago
Tony Crisci
5b219a1598
separate config directives and commands
7 years ago
Tony Crisci
ac8269d536
take seat param for handle_command and rename
7 years ago
Tony Crisci
66d1e0b313
basic layout command
7 years ago
Tony Crisci
bcb870bcf2
bug: fix crash on focus up
7 years ago
Tony Crisci
23e9f5dc35
use wl_container_of() in output destroy callback
7 years ago
Tony Crisci
4b3aa59b8b
rename new_input listener on input-manager
7 years ago
Tony Crisci
316effd7b1
make handle_output_destroy() static
7 years ago
Tony Crisci
4c4cc9c999
remove old comments
7 years ago
Tony Crisci
b88f06e70a
bugfix: get right layout box for rendering views
7 years ago
Tony Crisci
176d24f02d
choose adjacent container between outputs
7 years ago
Tony Crisci
fb37e80225
basic move focus in direction across outputs
7 years ago
Tony Crisci
80927985fb
fix output rendering issue
7 years ago
Tony Crisci
7c089442c3
use box projection function
7 years ago
Tony Crisci
9510a20fcd
arrange windows after output add
7 years ago