Commit graph

680 commits

Author SHA1 Message Date
Victoria Brekenfeld
db3e372b8f chore: Update smithay/smithay-egui 2023-09-21 18:21:20 +02:00
Victoria Brekenfeld
ef361ae932
Merge pull request #176 from alyssais/geometry
wayland: map windows with correct geometry
2023-09-21 17:46:20 +02:00
Alyssa Ross
40eb78debf
wayland: map windows with correct geometry
Consider a simple client that doesn't use set_window_geometry,
committing after attaching a buffer to a window surface.

Window::geometry falls back to Window::bbox, but when
Shell::map_window called Window::geometry, Window::bbox hadn't been
set yet, because that only happened later in
<State as CompositorHandler>::commit, so the window would be mapped
with a size of (0, 0).

This resulted in server-side decorations not being drawn for such
clients until they were re-focused or resized.

The fix is to add an extra call to Window::on_commit() before mapping
it, so that its bbox is set correctly when Shell::map_window asks for
its geometry.
2023-09-21 14:39:45 +00:00
Victoria Brekenfeld
747a24199a shell: Put toplevel on new workspace, when removing Outputs 2023-09-21 12:38:33 +02:00
Victoria Brekenfeld
de83185af9 focus: Don't sort children behind their parents 2023-09-20 19:20:35 +02:00
Victoria Brekenfeld
4709a1d684 shell: Have Move-shortcut for floating layer and fullscreen windows 2023-09-20 18:57:58 +02:00
Victoria Brekenfeld
3d10ca6105 shell: Handle focus shortcuts for floating layer 2023-09-20 16:30:37 +02:00
Victoria Brekenfeld
63c073e3e5 shell: Don't draw focus indicator during fullscreen animation 2023-09-20 14:56:18 +02:00
Victoria Brekenfeld
4e1c16c384 fullscreen: Use CosmicWindow for decorations 2023-09-18 18:51:21 +02:00
Victoria Brekenfeld
098dd1e37d decorations: Don't round edges when maximized 2023-09-18 18:29:55 +02:00
Victoria Brekenfeld
da90d9bf78 render: Fullscreen/Maximize animation 2023-09-15 18:37:34 +02:00
Victoria Brekenfeld
5cebc7b97d tiling: Fix rendering single-stack window on empty workspace 2023-09-14 19:41:36 +02:00
Victoria Brekenfeld
2a79221ff4 tiling: Fix moving single stack surfaces 2023-09-14 19:41:36 +02:00
Victoria Brekenfeld
973b360514 tiling: Fix stack indicator rendering 2023-09-14 19:41:36 +02:00
Victoria Brekenfeld
19d5ed92f4 shell: Don't remove workspaces during animations 2023-09-14 19:41:36 +02:00
Victoria Brekenfeld
abd27e6aab shell: Fix group backdrop on swap 2023-09-14 19:41:36 +02:00
Victoria Brekenfeld
abf430f956 shell: Rework fullscreen/maximize 2023-09-14 19:41:36 +02:00
Victoria Brekenfeld
716728560a
Merge pull request #173 from pop-os/update-smithay_jammy
Update Smithay
2023-09-14 15:42:22 +02:00
Victoria Brekenfeld
003263b94e
render: Don't treat dnd surface as egliable for scanout on cursor plane 2023-09-14 14:44:54 +02:00
Ian Douglas Scott
e1fc182c3e Update Smithay 2023-09-13 20:24:11 -07:00
Ian Douglas Scott
af457ef723
Merge pull request #172 from pop-os/element-under-global
Fix `TilingLayout::element_under` position with global workspaces
2023-09-13 15:27:11 -07:00
Ian Douglas Scott
5df26c2317 Fix TilingLayout::element_under position with global workspaces
I didn't see any issue with how mouse events were handled, but a bisect
showed b818a68a91 caused the issue.
Reverting the definition of `element_under` to the version before that
change fixed the behavior.

Comparing what both versions return, the right element is returned, but
the location returned is wrong. This makes the return value match the
position that was returned by the previous implementation. It seems to
be working correctly now.

Fixes https://github.com/pop-os/cosmic-comp/issues/161.
2023-09-13 14:26:52 -07:00
Victoria Brekenfeld
82c7d65049 tiling: Only render swap-preview on active output 2023-09-13 12:51:41 +02:00
Victoria Brekenfeld
a5b10f5d4a tiling: Fix swap-focus always selecting whole stacks 2023-09-12 20:53:35 +02:00
Victoria Brekenfeld
9ad69fe119 tiling: Add logic to move on swap with empty workspace 2023-09-12 20:53:35 +02:00
Victoria Brekenfeld
2588b8920d tiling: Fix wrong focus swapping across workspaces 2023-09-12 20:53:35 +02:00
Victoria Brekenfeld
dbb5338322 tiling: Fix toplevel-info on swap 2023-09-12 20:53:35 +02:00
Victoria Brekenfeld
7ba52d7162 shell: Refresh focus-stacks after swap 2023-09-12 20:53:35 +02:00
Victoria Brekenfeld
6b4eb83af5 stack: Fix missing re-enter on add 2023-09-12 20:53:35 +02:00
Victoria Brekenfeld
e2ac5c0a23 tiling: Fix swap preview on different workspaces/outputs 2023-09-12 20:53:35 +02:00
Victoria Brekenfeld
e992a4b442 tiling: Fix swap mode with single window stacks 2023-09-12 20:53:35 +02:00
Victoria Brekenfeld
1251b7e9f7 shell/tiling: Implement window swap mode 2023-09-12 20:53:35 +02:00
Victoria Brekenfeld
ac4bf01315 iced: actual just delay updates 2023-09-12 20:44:23 +02:00
Victoria Brekenfeld
91a82c02b3 stack: Let iced figure out the size 2023-09-12 20:16:14 +02:00
Victoria Brekenfeld
9de5104cbc iced: Throttle resize updates 2023-09-12 20:16:07 +02:00
Victoria Brekenfeld
8038034a62 shell: Fix closed x11 windows closing stacks 2023-09-12 13:22:49 +02:00
Victoria Brekenfeld
bc3c304b12
Merge pull request #167 from pop-os/relative-pointer_jammy
Send `relative_pointer` in frame with `pointer`; update Smithay
2023-09-08 20:48:28 +02:00
Ian Douglas Scott
6247918cad Send relative_pointer in frame with pointer; update Smithay
The protocol doesn't specify this, but XWayland does assume relative
pointer events are part of a frame.

This works for now, though a better solution will be needed in Smithay
to also handle pointer constraints where a relative motion may occur
alone, etc.

This seems to fix https://github.com/pop-os/cosmic-comp/issues/159.
2023-09-08 11:10:53 -07:00
Victoria Brekenfeld
f6ea7fa81d
Merge pull request #158 from pop-os/fix-flake_jammy 2023-09-06 12:48:03 +02:00
Ashley Wulber
e37cfbf595
fix: add cosmic-comp-config to nix flake 2023-09-05 19:21:23 -04:00
Victoria Brekenfeld
5fb2feaf4c
Merge pull request #156 from pop-os/pointer-gestures_jammy
Update smithay, add pointer gestures and security context
2023-09-05 22:58:49 +02:00
Ian Douglas Scott
8dce518ba6 Add security context protocol
Currently, excludes some protocols if they have any security context
associated.
2023-09-05 13:47:23 -07:00
Ian Douglas Scott
c68625ff78 Add pointer gestures support 2023-09-05 13:47:07 -07:00
Ian Douglas Scott
e7e9b768c8 Update Smithay, adjusting for API changes
The main changes are those related to pointer gestures. Which are a bit
verbose but not too difficult.
2023-09-05 13:46:48 -07:00
Ian Douglas Scott
1392fc7c95
Merge pull request #155 from pop-os/scroll-factor_jammy
input: Add a `scroll_factor` config option
2023-09-01 14:31:03 -07:00
Ian Douglas Scott
20159a6c8c input: Add a scroll_factor config option
This is not a setting handled by libinput; we have to scale the
scrolling ourselves.

This should match the behavior of the `scroll_factor` defined in
sway-input(5).
2023-09-01 12:36:12 -07:00
Victoria Brekenfeld
511ee8d87a
Merge pull request #140 from pop-os/cosmic-comp-config
Use cosmic-config for input config; changeable at runtime
2023-09-01 12:51:42 +02:00
Ian Douglas Scott
1ea0ffdb91 config: Fix default workspace right bindings 2023-08-31 16:56:01 -07:00
Ian Douglas Scott
34eba9e75b config: Ignore DeviceConfigError::Unsupported for defaults
Also reduces duplication.
2023-08-31 16:56:01 -07:00
Ian Douglas Scott
8c3a3a9d1a cosmic_comp_config: Some trait implementations and re-exports 2023-08-31 16:55:58 -07:00