Commit graph

2137 commits

Author SHA1 Message Date
Ashley Wulber
f6d3dafda7 fix: use configured blur strength for lock surface and its subsurfaces 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
e0b6784eb5 render/blur: Wipe blur_texture before blit 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
f424abbc29 render/blur: Fix div-by-zero in shaders 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
43d6145afd chore: fix warnings with no features 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
58938ef8ee render/blur: Fix transformed outputs 2026-07-09 18:08:01 +02:00
Ashley Wulber
b890f7b0fa fix(corner_radius): loosen padding size constraint 2026-07-09 18:08:01 +02:00
Ashley Wulber
77f57a656d fix: pad_rect typos 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
db06770a6b element: Refactor remaining libcosmic elements for blur 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
6c76fdaa79 element/window/stack: Use new IcedRenderElement 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
ab9f13b36f iced: Handle blur internally 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
5ee2fa911a wayland: Support cosmic-corner-radius v2 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
55d57ddba2 chore: theme-v2 libcosmic update 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
667414bd92 renderer/blur: Fix incorrectly offset blur region 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
6868c24501 renderer/blur: Use proper commit counter 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
d4cd9b674c chore: Adjust log level for blur debugging 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
cfed174e9b chore: Fix clippy lints 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
de8b47839c render: Make blur_strength configurable 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
1c5ef576f4 render: Don't use separate damage_output calls 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
eb41b076ed render: Use NamespaceElements to fix blurred lower layer-shell surfaces 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
a9bf89d8b2 element/wayland: Add blur background-effect 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
e4c0716951 element: Refactor element acquisition to be push based 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
178c6593dc element: Introduce SurfaceRenderElement 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
8b990e5658 render: Merge FromGlesError into AsGlowRenderer 2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
0ce7f11445 element/surface: Fix reported corner radius 2026-07-09 18:08:01 +02:00
maskedsyntax
067be10474 fix: fall back to legacy X11 names when loading pointer themes
Smithay requests modern shape-v1 names while themes like DMZ-White
only provide legacy X11 aliases. Try known aliases before failing to load.
2026-07-08 16:10:15 -06:00
Ian Douglas Scott
373a44d431 shell: Restore fullscreen to single-element stack
If a surface was previously a single-element stack, restore it normally
using the floating/tiling restore data, but map as a single element
stack instead of a plain window.
2026-07-07 17:46:23 -07:00
Ian Douglas Scott
98e1dd7f6b shell: Also restore stack element on sticky layer to stack 2026-07-07 17:46:23 -07:00
Ian Douglas Scott
5c0c22988e Don't unnecessarily use Option in WorkspaceRestoreData
Unless we expect to need this again in the future, it's best not to have
an `Option` here unnecessarily.
2026-07-07 17:46:23 -07:00
Ian Douglas Scott
9e6d46c17e shell: Restore fullscreen surface to stack
Previously, a surface that was in a stack that is fullscreened would be
removed from the stack, and on unfullscreening, restored to the
floating/tiling layer as though it were a new window outside the stack.

Instead, if the stack still exists, add the window to it at the same
position it previously occupied.
2026-07-07 17:46:23 -07:00
Ian Douglas Scott
f765696834 Avoid unnecessarily unwrapping stack_ref() after is_stack()
In a lot of cases, matching on `stack_ref()` also works.
2026-07-07 17:46:23 -07:00
Ian Douglas Scott
26ee83aaa7 Implement Debug and comparison with CosmicMapped for CosmicMappedKey 2026-07-07 17:46:23 -07:00
Ian Douglas Scott
29320bdab5 Add cosmic-keyboard-layout-unstable-v1 protocol
https://github.com/pop-os/cosmic-protocols/pull/28

Allows clients like `cosmic-applet-input-sources` to show which layout
group is active and update it. Currently this is implemented by update
the `xkb_config` to change the layout order.
2026-07-07 16:44:09 +02:00
Ericky Dos Santos
031fdc389a kms: change from thread_local approach to wiring scanout node through function calls to detect scanout candidates 2026-07-06 11:26:22 -06:00
Ericky Dos Santos
012c77ec81 fix(kms): gate overlay scanout per-element by buffer GPU node 2026-07-06 11:26:22 -06:00
Hojjat Abdollahi
9d52653d5c
revert: "fix: follow the focus after alt+tab to another output"
This reverts commit 56f84fba2d.
2026-07-02 17:53:03 +02:00
Alexander Daichendt
f5e0ba1594 make device DrmDevice in disable_crts 2026-07-01 21:18:43 +02:00
Alexander Daichendt
a9f2427c00 fix: internal laptop screen stuck on vendor logo with external monitor 2026-07-01 21:18:43 +02:00
Ashley Wulber
dacdc3db39 chore: workaround for Tiger Lake 2026-07-01 13:30:57 -04:00
Tom Grushka
c5775d2010 change update_focal_point to use f64 to avoid rounding errors 2026-07-01 17:56:29 +02:00
Victoria Brekenfeld
bb584aab7f backend: Don't attempt dma-copies from newer intel chips 2026-06-30 18:39:43 +02:00
Victoria Brekenfeld
ccc4f36065 chore: update smithay 2026-06-30 18:37:42 +02:00
Frederic Laing
650768211f fix: keep windows visible until overview commits a buffer 2026-06-29 15:03:40 +02:00
Ilia Malanin
aac1e19f08 fix: set_rectangle leak 2026-06-18 13:37:14 -04:00
Victoria Brekenfeld
f032e7dbd5 shell/focus: Order sticky windows before fullscreen windows 2026-06-18 18:41:27 +02:00
Victoria Brekenfeld
106b50293b wayland/activation: Fix requests without active outputs 2026-06-18 18:29:37 +02:00
Skygrango
296b6bee23 wayland: reject cursor hint requests that are outside the surface bound 2026-06-16 14:49:28 -06:00
Skygrango
b6cab38528 wayland: implement pointer_warp_v1 2026-06-16 14:49:28 -06:00
Anthony T. Lannutti
821b431973 feat: separate logind feature from systemd
Move logind-zbus to a dedicated 'logind' feature that is independent
of the 'systemd' feature. This allows non-systemd users (e.g., OpenRC
with elogind) to access lid switch inhibition and lid status detection
without requiring the full systemd stack.

The 'systemd' feature now depends on 'logind' to maintain backward
compatibility, so existing users are unaffected.

Feature configuration:
- default: ["systemd"]
- logind: ["logind-zbus"]
- systemd: ["libsystemd", "logind", "tracing-journald"]

Resolves #2473

Coding-Agent: OpenCode
Model: claude-sonnet-4-5
2026-06-16 14:41:51 -06:00
Richard Chennault
dddf51b441
kms: skip lease resume when drm device activation fails in resume_session()
When smithay's DrmDevice::activate() returns an error (e.g. because
drmSetMaster() failed during VT resume), resume_session() was only
logging the error and then proceeding to resume DRM leases on a device
that has no master. This leaves the compositor in a broken render state
where every atomic page flip returns EPERM.

Fix: continue to the next device on activate() failure. The device
surface stays inactive and lease resume is deferred. On the next
ActivateSession event (next VT switch to this TTY), resume_session()
will be called again and activate() will succeed once the seat manager
has granted DRM master.

Reproducer: hybrid GPU system (Intel iGPU render + NVIDIA display),
VT switch away from and back to COSMIC session. On return, drmSetMaster
races the seat notification; activate() fails; without this fix
the compositor floods journald with EPERM at 60fps.

Fixes: pop-os#2331, pop-os#2302
2026-06-16 14:41:01 -06:00
Sai Asish Y
aff506bb7b fix(floating): allow remapping minimized windows
Signed-off-by: Sai Asish Y <say.apm35@gmail.com>
2026-06-16 14:39:53 -06:00