Victoria Brekenfeld
0ed2841435
iced: Don't call update from render_elements
2025-03-12 16:59:05 +01:00
Victoria Brekenfeld
0f5ba624c5
iced: Don't throttle resizes
2025-03-12 16:59:05 +01:00
Victoria Brekenfeld
ea1800f157
input: Fix events for subsurfaces of lock surface
2025-03-12 16:55:22 +01:00
Peter Krull
ad2cba324e
fix: Remove extra scaling of borders
2025-03-12 16:55:00 +01:00
Victoria Brekenfeld
95b27637ae
chore: smithay update
2025-03-12 16:50:58 +01:00
Ian Douglas Scott
f8fae8a5b0
shell: On output_remove, focus moved workspace instead of empty one
...
On `output_remove`, if the output a workspace is moved to had no
non-empty workspaces (or did, but had an empty one active), the empty
workspace would remain active, and the workspace that was active on the
removed output is no longer visible.
Instead, change the active workspace to the one that was active on the
removed output.
This addresses another edge case where hotplug results in an empty
workspace, followed by other non-empty workspaces, and generally seems
like a better experience.
This could be further restricted by only applying if `new_set` is not on
the active output (to not mess with what the user is interacting with,
even it's an empty workspace) or only if the old `set` was the active
output, etc. But it seems good without further restriction.
2025-03-12 15:44:35 +01:00
Ian Douglas Scott
f9dd922af3
protocol/workspace: Store ext/cosmic specific capabilities
...
This means a change to an ext capability will not send a redundant
cosmic capability event, and vice versa.
This will be more important when cosmic-specific states are added. Since
those may change often.
2025-03-12 15:44:35 +01:00
Ian Douglas Scott
dea7f2f825
protocol/workspace: Split ext/cosmic-v1 workspace data into two types
2025-03-12 15:44:35 +01:00
Ian Douglas Scott
c72002e15a
shell: If active workspace moved, add WState::Active to new active
2025-03-12 15:44:35 +01:00
Ian Douglas Scott
2b7f898e83
shell: Fix getting active_handle for other_set
...
Use `other_set.active`, not `set_active`.
2025-03-12 15:44:35 +01:00
Victoria Brekenfeld
8a32571b8a
tiling: Exclude maximized windows from input/render
2025-03-07 18:52:03 +01:00
Victoria Brekenfeld
24bf2e856a
iced: refresh after output_enter
2025-03-07 14:37:17 +01:00
Victoria Brekenfeld
a1211e2499
floating: Refresh space after mapping
2025-03-07 14:37:17 +01:00
Victoria Brekenfeld
01bc39dade
main: throttle refresh
2025-03-06 21:28:52 +01:00
Dusan
a96497f6f7
shell: next_output - axis overlap filter logic without negation
...
Signed-off-by: Dusan <dusanuveric@protonmail.com>
2025-03-05 18:24:28 +01:00
Victoria Brekenfeld
1a019280f3
actions: Remember previous workspace on extended action
2025-03-05 18:24:28 +01:00
Victoria Brekenfeld
d76f372c29
actions: Shortcut handling changes for #1005
2025-03-05 18:24:28 +01:00
Victoria Brekenfeld
638684642c
stack: Remember position during continuous move action
2025-03-05 18:24:28 +01:00
Victoria Brekenfeld
e116f20396
stack: Remember previous position during focus navigation
2025-03-05 18:24:28 +01:00
Ian Douglas Scott
8b63e09ddc
fix(protocol/workspace): Handle cosmic-workspace-v2 destroy requests
...
I forgot to handle these after I added them to destructors to the
protocol.
I wish we had exhaustiveness checking here...
2025-03-03 13:21:36 -08:00
Ian Douglas Scott
aac8166962
Add cosmic-workspace-v2, image source, toplevel info changes
...
This new protocol extends `ext-workspace-v1` with the same additional
functionality `cosmic-workspace-v1` provided. Toplevel info and toplevel
management are also updated to use ext handles, and there's an image
source for ext workspaces.
For now, the old protocol is still supported.
2025-03-03 12:30:25 +01:00
Ian Douglas Scott
47d142166b
Set WorkspaceCapabilities::SetTilingState capability
...
`cosmic-comp` handles `SetTilingState` requests, so it looks like it was
incorrectly not advertising this.
2025-03-03 12:30:25 +01:00
Ian Douglas Scott
0a6f2726cb
protocol/toplevel_management: Use WorkspaceHandle in argument
...
Already depends on `WorkspaceHandler`, so it can get the handle, and
toplevel info uses `WorkspaceHandle`s.
2025-03-03 12:30:25 +01:00
Ian Douglas Scott
1f2434e590
protocol/workspace: Fix initial sending of states and capabilities
...
The protocol states that these should always be sent, but this was
not initially sending bitflags if they were empty. That works, but isn't
what the protocol states.
Not wrapping the bitflag fields in options works well for `Workspace`,
but not for `WorkspaceDataInner`.
2025-03-03 12:30:25 +01:00
Victoria Brekenfeld
e0f78da0ae
stack: Fix input at bottom of window
2025-02-21 15:01:02 +01:00
Victoria Brekenfeld
61bde9f3b9
grabs/resize: Fix Xwayland geometry
2025-02-21 14:23:41 +01:00
Victoria Brekenfeld
9042f0adf4
zoom: bugfixes
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
c45a58c16c
wayland: Implement cosmic-a11y-v1
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
7af3650b83
chore: Cleanup some warnings
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
fff9b357f6
zoom: Add separator to popup
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
9e8c2f5e24
zoom: Be a little more lenient with OnEdge movement and fractional cursor positions
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
909ca8cf9d
zoom: Seperate animating/current focal_point
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
726a53b6b9
zoom: Reload config after writing
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
b92879e60b
zoom: Fix config/state changes
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
d30671c984
zoom: Localize zoom ui
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
3cff46d7e5
shell: Rescale zoom UI with zoom factor
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
07a471f285
zoom: Don't render at 100% scale while animating
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
24b5742554
iced: Allow rendering at a higher native scale than it's output
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
f72d2b91f3
shell: Add zoom UI
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
55e4dd7c0f
config: Handle zoom updates in Common::update_config
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
df9441804d
iced: Track last seat/serial for grabs
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
6fd1a48e60
grab: Refactor MenuGrab to be useful for zoom ui
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
e0530d2723
input: Refactor common logic into update_zoom
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
b7d4a66c22
input: Zoom on Super+Scroll
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
58f96e6f4a
config: Read/store zoom state
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
7267c44116
shell: Cleanup zoom state
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
4f67e89373
shell: Reset focal point if cursor outside OnEdge area
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
15c5e3fe26
shell: don't accidentally reset zoom when using multiple seats (theoretically)
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
531a1c951f
zoom: Handle multiple outputs
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
61d44b3a9d
utils: Move NextDown
2025-02-20 23:51:55 +01:00