Victoria Brekenfeld
39528878f8
toplevel_info: Don't send geometry updates, while resizing
2025-01-16 19:44:12 +01:00
Victoria Brekenfeld
75661c6ca7
tiling: Refactor blocker code
2025-01-16 19:44:12 +01:00
Victoria Brekenfeld
560d234036
tiling: Throttle resizes
2025-01-16 19:44:12 +01:00
Victoria Brekenfeld
cf26fe1c07
tiling: Fix flicker during resizing
2025-01-16 19:44:12 +01:00
Victoria Brekenfeld
e217a91fec
floating: Throttle resizes
2025-01-16 19:44:12 +01:00
Victoria Brekenfeld
df74a322ab
mapped: Allow to query in-flight configure for resize throttling
2025-01-16 19:44:12 +01:00
Ian Douglas Scott
6c7ec54bdb
Add a COSMIC_DISABLE_SYNCOBJ env var to disable syncobj protocol
...
If any issues with the syncobj protocol come up, or any issues we
suspect may be related to it, an env var may be helpful.
2025-01-16 19:43:51 +01:00
Ian Douglas Scott
9dddead15d
Add linux-drm-syncobj-v1 protocol
2025-01-15 20:20:53 +01:00
Ian Douglas Scott
005093b622
Update smithay-egui, egui
2025-01-15 20:08:02 +01:00
Ian Douglas Scott
1a3494e481
Use get_unconstrained_geometry function for popup position
2025-01-15 00:19:46 +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
Victoria Brekenfeld
42af2af37d
render: Fix race during startup
2025-01-07 12:09:42 +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
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
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
Ian Douglas Scott
fdfc5cbeb4
Use WeakOutput when accessing data of ZwlrOutputHeadV1
...
It seems cd9ff0b7bb broke mirroring.
Though it's also a bug that if any of these if conditions is not met,
the data will not be initialized.
Fixes https://github.com/pop-os/cosmic-epoch/issues/1341 .
2024-12-11 10:58:42 +01:00
Ashley Wulber
2c01c94477
fix: activation of an element outside the current workspace
...
If the activated element is outside the current workspace, its workspace should be set to urgent
2024-12-10 17:37:01 +01:00
Michal Rostecki
9b50d0f506
main: Update D-Bus activation environment also on non-systemd systems
...
On systems without systemd, use zbus to update D-Bus activation
environment with `WAYLAND_DISPLAY` and `DISPLAY` variables.
Fixes #1037
2024-12-09 16:33:15 +01:00
Victoria Brekenfeld
7829e7696d
focus: Only consider focused output
2024-12-05 18:37:09 +01:00
Victoria Brekenfeld
fce52cb6a2
focus: Un-activate non-active workspaces
2024-12-05 18:37:09 +01:00
Ashley Wulber
76863aaf9b
fix: filter by active workspace in overlap notify
2024-12-05 18:20:10 +01:00
Victoria Brekenfeld
fc84fa9948
shell: Fix windows global geometry to include ssd
2024-12-05 18:20:10 +01:00