Commit graph

193 commits

Author SHA1 Message Date
Victoria Brekenfeld
98ec82db77 output-configuration: Add vrr state 2024-05-07 12:25:15 +02:00
Victoria Brekenfeld
4b71674e10 output-configuration: Support release-requests / v3 2024-05-07 12:25:15 +02:00
Victoria Brekenfeld
3eb6c02008 kms: Output mirroring 2024-05-07 12:25:15 +02:00
Mattias Eriksson
19ba568f02 Initial support for idle notify and idle ihibit 2024-05-03 14:38:58 +02:00
Ian Douglas Scott
c4fc91d6e9 screencopy: Don't send fail after ready
Cosmic-workspaces was having an issue when the compositor sent `ready`,
`failed`, then `stopped`. This could be worked around client-side, but
presumably the compositor should never send more than one
`failed`/`ready` for a particular frame.

It seems cleaner to have `FrameInner::fail` as the only place that sends
`failed`. So any checks can be there. I believe the logic there should
be appropriate for every call.
2024-05-03 14:21:30 +02:00
Ian Douglas Scott
3697494146 screencopy: Fix reference cycle, that leaks buffer
Before this, `/proc/$(pidof cosmic-comp)/maps` quickly expands in length
when cosmic-workspaces is opened and closed a bunch of time, preventing
the GPU memory from being freed. Which on my Intel system can lead to
OOM eventually.

There may be other leaks to deal with, but `maps` no longer shows this
issue.
2024-04-30 13:05:16 +02:00
Ian Douglas Scott
17ddc7ce24 Update smithay
Updates for changes in https://github.com/Smithay/smithay/pull/1391.
2024-04-17 11:59:13 +02:00
Victoria Brekenfeld
5d5a510691 state: Move shell behind RwLock 2024-04-16 18:50:54 +02:00
Victoria Brekenfeld
647deb81f1 shell: Move seats into shell 2024-04-16 18:50:54 +02:00
Ryan Brue
895ea6aec1 fix: send pending activated instead of current activated to toplevel_info 2024-04-11 16:30:03 +02:00
Victoria Brekenfeld
11a8265145 toplevel-info: Also send workspace info for new windows 2024-04-11 13:28:49 +02:00
Ian Douglas Scott
de544e1d31 Update smithay to latest commit 2024-04-09 11:26:36 +02:00
Victoria Brekenfeld
6416299d58 shell: Send on_commit to sticky windows as well 2024-03-28 13:10:28 +01:00
Victoria Brekenfeld
cf75bc1952 chore: Update smithay/libcosmic 2024-03-26 18:50:56 +01:00
Victoria Brekenfeld
5459f52d5e input: Rework PointerFocus to operate directly on WlSurface 2024-03-26 18:50:56 +01:00
Victoria Brekenfeld
b40d153809 cosmic-screencopy-v2 2024-03-25 16:55:31 +01:00
Victoria Brekenfeld
973cfed87b shell: Handle unmapped windows correctly 2024-03-25 12:51:01 +01:00
Victoria Brekenfeld
6858238bd6 shell: Unify element_for_(x11_|wl_)surface 2024-03-25 12:51:01 +01:00
Ryan Brue
fc2173d028 feat: workspace switching touchpad gestures 2024-03-22 12:12:25 +01:00
Victoria Brekenfeld
d341cb8b86 debug: Drop puffin integration 2024-03-21 17:49:06 +01:00
Ian Douglas Scott
a1c8b3aa3e Add support for profiling using tracy 2024-03-20 23:55:21 +01:00
Ian Douglas Scott
a204197e6d Set keyboard LEDs (capslock, numlock, scrollock)
It doesn't seem there's currently a way to iterate over input devices,
so this adds a `Vec` of libinput keyboard devices. When run with the
kms backend.

Not the most elegant solution, but it doesn't seem practical to add a
type generic to `Devices` given how backends are handled, and `Device`
can't be made into a trait object. Another trait could be added, but
this is fine, and technically should perform better (but if it actually
had to iterate over many keyboards, something has gone very wrong).
2024-03-06 13:18:09 +01:00
Victoria Brekenfeld
70cda33481 xdg-activation: Unminimize actived window 2024-03-04 19:20:52 +01:00
Victoria Brekenfeld
2bf769ac32 stacks: Better handle minimize/unminimize of specific surface 2024-03-04 19:20:52 +01:00
Victoria Brekenfeld
3eb7e5f82e shell: implement minimize 2024-03-04 19:20:52 +01:00
Victoria Brekenfeld
13be507093 toplevel-management: Wire up more actions 2024-03-04 19:20:52 +01:00
Victoria Brekenfeld
068b70d4bc shell: empty (un)minimize handlers 2024-03-04 19:20:52 +01:00
Ian Douglas Scott
3036448c19 Update Smithay, with Window that supports X11 surfaces 2024-02-22 17:49:46 +01:00
Victoria Brekenfeld
849882a7db clippy fixes 2024-02-19 13:09:49 +01:00
Victoria Brekenfeld
f9f8af10a0 kms: Drop early_import as it seems to hurt performance 2024-02-19 13:09:49 +01:00
Victoria Brekenfeld
83ec68d383 chore: Update smithay 2024-02-19 13:09:49 +01:00
Victoria Brekenfeld
ef3486f7e0 kms: Track used devices and free resources 2024-02-19 13:09:49 +01:00
Christian Meissl
e74b0dfaaa use memory for system cursor
smithay only considers memory based
cursor elements for scan-out on a
cursor plane.
2024-02-15 13:13:33 +01:00
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