Commit graph

1373 commits

Author SHA1 Message Date
Ian Douglas Scott
1a3494e481 Use get_unconstrained_geometry function for popup position 2025-01-15 00:19:46 +01:00
Ashley Wulber
b7937807ad fix: cosmic-protocols rev 2025-01-14 13:26:16 -07:00
Victoria Brekenfeld
609c3c778b chore: Downgrade Cargo.lock version 2025-01-14 18:47:39 +01:00
Victoria Brekenfeld
9ce8621507 chore: update freedesktop-icons 2025-01-14 16:42:22 +01:00
Feike Donia
aa173e0d4f add Dutch translation 2025-01-14 14:27:58 +01:00
Ian Douglas Scott
794ac2fd8d Remove unused glow and drm-ffi dependencies 2025-01-14 11:26:20 +01:00
Victoria Brekenfeld
f73d9cee6b chore: Update smithay 2025-01-14 11:13:05 +01:00
Victoria Brekenfeld
03878357ee chore: cargo update 2025-01-13 21:51:37 +01:00
Victoria Brekenfeld
c608696953 chore: Update libcosmic 2025-01-13 21:27:46 +01:00
Victoria Brekenfeld
bb064e146b chore: Update cosmic-text 2025-01-13 17:39:19 +01:00
Cenk Uluisik
7425ffbad9 fix: add missing libdisplay-info library into flake.nix 2025-01-12 13:09:03 +01:00
Ian Douglas Scott
c9f740210f toplevel-info: Send initial state even if empty
This is imported given how
https://github.com/pop-os/cosmic-protocols/pull/39 uses this event.

But the protocol spec also states the event "is emitted on creation" so
this is seemingly incorrect regardless.
2025-01-08 00:49:02 +01:00
Victoria Brekenfeld
addcbc5039 kms: Don't try to restore modifiers, if we don't have any surfaces 2025-01-07 17:48:14 +01:00
Victoria Brekenfeld
ff22b98ec7 output_configuration: Better log errors 2025-01-07 17:48:06 +01:00
Ian Douglas Scott
7f69244e07 Use Mul impl of Size 2025-01-07 12:50:35 +01:00
Ian Douglas Scott
b685512127 Migrate away from Rectangle::from_loc_and_size
Deprecated in `smithay` by https://github.com/Smithay/smithay/pull/1621.
2025-01-07 12:50:35 +01:00
Ian Douglas Scott
9074447c4f chore: Update smithay 2025-01-07 12:50:35 +01:00
Victoria Brekenfeld
42af2af37d render: Fix race during startup 2025-01-07 12:09:42 +01:00
Victoria Brekenfeld
578c77cb69 chore: github-ci was also missing pixman apparently 2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
c07d115d2b chore: Add libdisplay-info to github ci 2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
870e5be2a6 kms: Use scaled sizes for placing new outputs 2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
bebd7c5c40 kms: Cleanup now that output_elements won't panic for uninitialized outputs 2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
db13eea91c shell: Allow active workspace to be None 2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
23570ea9f4 chore: Add libdisplay-info dependency for packaging 2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
3926aee5b6 debug: Fixup feature compilation 2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
6be5009b37 kms: Allow diverging primary plane formats under certain conditions 2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
b5cd62fd7a kms: skip cursor updates for fullscreen content above the minimum refresh rate 2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
adcb81bbe0 deps: Switch from edid-rs to libdisplay-info 2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
546966bf15 drm_lease: Disable overlay planes when active 2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
8b87d6524e kms: Use new DrmOutput api 2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
e356e3c589 xdg_activation: Also consider tiled windows 2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
61b0dddf50 chore: Fix a few warnings 2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
f12f4db0e1 chore: Update smithay 2025-01-06 20:23:05 +01:00
Paul Daniel Faria
e5263bbad8 Update leds when devices are added
This fixes #1104

LEDs on keyboard will now update to match the
compositor state when they're plugged in.
2025-01-06 12:13:51 +01:00
David Brochero
68b6156aa8
Fix sticky toggle crashes on maximized windows (#1110) 2025-01-06 12:10:49 +01:00
Yureka
9b78a2d780 refactor(shell/element): refactor how decorations height is accessed
This fixes several things:
- The xwayland code previously incorrectly used the SSD_HEIGHT (for Windows) even when the X11 surface was in a stack
- The SSD_HEIGHT was defined in surface.rs, even though rendering serverside decorations is done in the window/stack

Rename (min|max)_size to (min|max)_size_without_ssd in CosmicSurface and make it act accordingly
Add a new (min|max)_size() in CosmicWindow and CosmicStack, which takes the surface's (min|max)_size and adds the decorations.
Change all callers to use (min|max)_size() from the window or stack respectively, except is_dialog() where it does not matter.
2024-12-28 15:32:03 +01:00
Ian Douglas Scott
1118aa2877 When removing output global, use disable_global, remove with timer
This should fix an issue where output hotplug can sometimes cause
clients (including XWayland) to crash with a protocol error trying to
bind the output.

Using a timer doesn't seem ideal, but seems to be the correct way to do
this at present. Wlroots `wlr_global_destroy_safe` is basically the same
as this.

Adding a `LoopHandle` argument to `OutputConfigurationState::new` seems
awkward, but maybe better than a handler method for removing globals.
(`IdleNotifierState::new` also takes a `LoopHandle`). Perhaps Smithay
could provide some kind of helper for this.
2024-12-19 00:17:38 +01:00
Victoria Brekenfeld
7ac204ee79 focus: Fix active/focused output on refresh_focus
Previously removing the last output could have left seats with an
invalid active output. We already have logic to check this in
`refresh_focus` but failed to apply it before `update_pointer_focus`.
Let's fix that.
2024-12-16 20:14:37 +01:00
Victoria Brekenfeld
f2e53f09c9 shell: Fix stacking maximized windows 2024-12-16 17:29:56 +01:00
Ian Douglas Scott
6707c92522 toplevel-info: Fix behavior with multiple instances of global
Instead of looking for toplevel handles for the client, look for
toplevel handles for the specific global instance.
2024-12-14 09:32:11 +01:00
Victoria Brekenfeld
2e1f6a4746 shell: Unset focused outputs on remove_output 2024-12-13 16:23:30 +01:00
Victoria Brekenfeld
9b4127555e kms/surface: Fix racy output disable 2024-12-12 14:29:50 +01:00
Ashley Wulber
5b89ad27fb fix: manually scale the damage 2024-12-12 07:53:58 +01:00
Ashley Wulber
3132767a60 fix: improve damage tracking 2024-12-12 07:53:58 +01:00
Ashley Wulber
892c05f4fc fix(iced): use internal_ref size 2024-12-12 07:53:58 +01:00
Ashley Wulber
6c8325856f chore: update deps 2024-12-11 18:28:17 +01:00
Ashley Wulber
5f650e7d08 feat: alt+shift+tab 2024-12-11 18:28:17 +01:00
Vukašin Vojinović
7de52054ff chore: update iced/libcosmic 2024-12-11 16:58:16 +01:00
Ian Douglas Scott
0d0b89d538 Call data_init.init even if weak references are not alive 2024-12-11 10:58:42 +01:00
Ian Douglas Scott
16a1214207 output_configuration: Use unwrap in calls to Resource::data
Having if conditions for these is unnecessary when they should never be
reached. (This is commonly unwrapped in `smithay`.)

Some of these else conditions fail to call `data_init.init` with a new
id, so they'd result in a crash later anyway.
2024-12-11 10:58:42 +01:00