Commit graph

160 commits

Author SHA1 Message Date
Ian Douglas Scott
b8e5dbea8f Advertise version 2 of zcosmic_workspace_manager_v1 global 2024-02-07 21:40:23 +01:00
Victoria Brekenfeld
c0f7524a09 shell: Drop static workspaces 2024-02-07 21:40:23 +01:00
Victoria Brekenfeld
226bf7f49d workspace: Add tiling_state 2024-02-07 21:40:23 +01:00
Victoria Brekenfeld
54f2d2c67e chore: Update smithay 2024-02-06 15:31:01 +01:00
Ian Douglas Scott
b2b718dbea Update smithay 2024-01-08 12:43:41 +01:00
Victoria Brekenfeld
0ac12ce202 shell: Handle fullscreen of sticky windows 2024-01-02 13:24:07 +01:00
Victoria Brekenfeld
97a13ea515 shell: Lift/Refactor (interactive) resize to consider sticky windows 2024-01-02 13:24:07 +01:00
Victoria Brekenfeld
807f63bb72 shell: Lift/refactor (un)maximize, consider sticky windows 2024-01-02 13:24:07 +01:00
Victoria Brekenfeld
d0136194f4 xdg-popup: Unconstrain sticky window popups as well 2024-01-02 13:24:07 +01:00
Victoria Brekenfeld
10c196a080 shell: Lift recalculate to consider sticky_layer 2024-01-02 13:24:07 +01:00
Victoria Brekenfeld
769b7d6996 shell: Refactor move_request, consider sticky windows 2024-01-02 13:24:07 +01:00
Victoria Brekenfeld
d503e44ca8 shell: refactor single visible_output 2024-01-02 13:24:07 +01:00
Victoria Brekenfeld
35766a372b screencopy: Fix copying to opaque shm formats 2024-01-02 13:24:07 +01:00
Ian Douglas Scott
cf9ae91e96 Initial support for tablet input 2024-01-02 12:44:10 +01:00
Victoria Brekenfeld
d4d51192b5 sec_context: Fix None drm_node 2023-12-20 09:56:31 +01:00
Ian Douglas Scott
6eb8b82440 Fix use of ImportNotifier
Somehow when updating to this API, I missed the call to `successful`.

This doesn't seem to make a difference for most clients since
`create_immed` is normally used. But should correct anything using
`create`.
2023-12-14 23:56:08 +01:00
Ian Douglas Scott
656996503c workspace-management: Implement move_to_workspace request
Needed for `cosmic-workspaces`.
2023-12-12 21:39:34 +01:00
Victoria Brekenfeld
75990ff056 menu: Add stack tab specific menu 2023-12-12 18:39:41 +01:00
Victoria Brekenfeld
02a6290067 xdg-shell: Fix menu offset 2023-12-12 18:39:41 +01:00
Victoria Brekenfeld
8c4d77e43c shell: Add window menu 2023-12-12 18:39:41 +01:00
Victoria Brekenfeld
edfb0edda7 grabs: Add ReleaseMode for menu-initiated grabs 2023-12-12 18:39:41 +01:00
Victoria Brekenfeld
996b5a8227 shell: Move space_for_handle into Workspaces 2023-11-23 12:57:42 +01:00
Victoria Brekenfeld
c09a735289 state: Move Xwayland state into shell 2023-11-23 12:57:42 +01:00
Ian Douglas Scott
41a69cfc9f Update Smithay
For the `drm` protocol, we can't construct an `ImportNotifier`, since
that is specifically based around `ZwpLinuxBufferParamsv1`. So we need a
new method for importing with that protocol.

This could be improved, but should match current behavior.
2023-11-23 12:43:28 +01:00
Ashley Wulber
495d772a38 fix: set the workspace of the activated token's surface to urgent if not focusing it 2023-11-16 19:13:38 +01:00
Ian Douglas Scott
b33c1dc9f7 Schedule render when session lock is created/destroyed 2023-11-15 13:41:19 +01:00
Ian Douglas Scott
440cd03371 Handle session lock surfaces in visible_outputs_for_surface
Fixes issue with re-draw not being queued on initial surface commit
until cursor is moved.
2023-11-15 13:41:19 +01:00
Victoria Brekenfeld
14867a0893 xdg-activation: Switch stack focus 2023-11-14 19:43:06 +01:00
xDarksome
72ee1c4d5a
Enable wlr_data_control protocol (#101) 2023-11-13 21:47:43 +01:00
Victoria Brekenfeld
f7cc1985e3 xdg-activation: Initial implementation 2023-11-09 13:48:34 +01:00
Victoria Brekenfeld
9ced8c346d shell: Each surface has only one workspace 2023-11-09 13:48:34 +01:00
Ian Douglas Scott
5fcdd81fc3 Enable necessary protocols for supporting IMEs 2023-11-07 10:26:22 -08:00
Ian Douglas Scott
9abeeea5df Allow session lock if existing session lock is no longer valid
This makes it possible to handle a crash in the session lock client by
restarting it, for instance. This is similar to how Sway behaves.
2023-11-07 08:31:58 -08:00
Victoria Brekenfeld
f0d5ac1c8d security_context: Inherit privileged-flag for panel 2023-11-06 18:35:47 +01:00
Ian Douglas Scott
81efd42dd5 Use cosmic-config for dynamic workspace settings
`WorkspaceAmount`, `WorkspaceMode`, and `WorkspaceLayout` can all be
changed dynamically now.
2023-10-27 12:36:40 -07:00
Ian Douglas Scott
f0277eabae Add ext-session-lock protocol 2023-10-27 09:01:25 -07:00
Ashley Wulber
d9e3d60a37 refactor: use a static color for CLEAR_COLOR 2023-10-25 19:41:55 +02:00
Ashley Wulber
abbe94e6e1 feat: theme integration
refactor: only apply updates if there is a change in the theme

refactor: include theme in state

cleanup: theme integration
2023-10-25 19:41:55 +02:00
Victoria Brekenfeld
41998433c7 xdg-shell: Fix sub-popup positioning 2023-10-25 19:41:55 +02:00
Victoria Brekenfeld
64143e75e7 shell: Properly handle fullscreen outputs 2023-10-25 19:41:55 +02:00
Victoria Brekenfeld
72df9d07e6 shell: One workspace per output 2023-10-25 19:41:55 +02:00
Victoria Brekenfeld
42aaafe586 utils: New geometry spaces local/global 2023-10-25 19:41:55 +02:00
Victoria Brekenfeld
806e10fcd9
Merge pull request #191 from pop-os/drm-lease_jammy
wayland/kms: Add drm_lease implementation
2023-10-11 22:42:42 +02:00
Ian Douglas Scott
111eb4edf4 Update smithay, with cursor/selection changes
We'll probably want to add support for `cursor-shape-v1`. Not sure about
`wlr-data-control-unstable-v1`. But this just updates to work with the
latest smithay commit for new.
2023-10-10 13:32:41 -07:00
Victoria Brekenfeld
7ecc970a5b wayland/kms: Add drm_lease implementation 2023-10-06 18:21:50 +02:00
Victoria Brekenfeld
4e12957169 chore: Update deps 2023-10-02 21:51:49 +02:00
Ian Douglas Scott
373af07319 Implement pointer constraints; update to send frame manually 2023-09-29 19:21:13 +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
4709a1d684 shell: Have Move-shortcut for floating layer and fullscreen windows 2023-09-20 18:57:58 +02:00