Ian Douglas Scott
dda2d14832
input: Send wl_pointer.motion on warp, and applying constraint hint
...
Gnome seems to send `motion` in these cases. The spec isn't 100%
explicit, but it seems `motion` events are needed for the client to have
the same understanding of where the pointer is as the compositor, which
generally seems to be desired.
This is also needed for toplevel cursor image-copy to get the position
change. Likewise, we want image-copy to have the same understanding of
where the cursor is as the compositor and client.
2026-07-21 17:02:58 +02:00
Ian Douglas Scott
c92c18e09e
Use Global coordinate instead of inferring as Logical
...
Inference behavior can be confusing, and the coordinate here is global,
so use `Global` like the `PointerMotion*` event handlers.
2026-07-21 17:02:58 +02:00
Ian Douglas Scott
2648aea0df
image-copy: Move duplicate code to a cursor_capture_constraints()
...
This ensures we avoid advertising a `0,0` buffer size (which will
protocol error to actually allocate), and avoids defining the supported
formats for cursor capture buffers in a bunch of places.
2026-07-21 17:02:58 +02:00
Ian Douglas Scott
27956e6e00
Make cursor_geometry() return a CursorGeometry struct
...
A bit better than just a tuple.
2026-07-21 17:02:58 +02:00
Ian Douglas Scott
dd6ebd03c9
image-copy: Hold references to Buffers to block release
...
The `wl_buffer` now won't be released until sync fence polls ready.
2026-07-21 17:02:58 +02:00
Ian Douglas Scott
d84d5d46ce
image-copy: Use seat from WlPointer instead of last_active()
2026-07-21 17:02:58 +02:00
Vukašin Vojinović
60137c0d9e
chore(render): use Affine2 where possible
2026-07-21 15:53:38 +02:00
RipleyTom
8955024bff
Fix: improve edge pointer accuracy
2026-07-21 15:50:19 +02:00
RipleyTom
9789187416
fix: map_window_request should update pending state
2026-07-21 13:08:47 +02:00
Hojjat
aabf1cdc08
fix: flicker on wayland context menu pop up
...
fix
2026-07-21 12:59:20 +02:00
Victoria Brekenfeld
9b5a2a0f83
chore: Fix feature gate for logind
2026-07-20 17:28:15 +02:00
Vukašin Vojinović
d41124a51d
chore: clippy fixes
2026-07-18 09:09:30 +02:00
Vukašin Vojinović
160bd39ba4
render: cgmath -> glam
2026-07-18 09:09:30 +02:00
Victoria Brekenfeld
2d95d46a37
chore: formatting fixes
2026-07-16 19:43:10 +02:00
Victoria Brekenfeld
8ab946f10a
chore: clippy fixes
2026-07-16 19:43:10 +02:00
Alyssa Ross
9feaa865ab
main: fix kiosk command with command line options
...
We were just running whatever was given on the command line as the
kiosk command, which meant that if --no-xwayland was given, we'd try
execing --no-xwayland. Preserve the processed command line from the
option parser, and run only what's left over as the kiosk command to
fix this.
2026-07-15 22:56:25 +02:00
Alyssa Ross
2b360a8dd7
main: notify readiness on non-systemd systems
...
Other service supervisors implement systemd's readiness notification
protocol. For example, s6 implements it with the
s6-notify-fd-from-socket[1] program. libsystemd::daemon::notify
already checks for NOTIFY_SOCKET being set, which should be sufficient
to tell if systemd-style readiness notification is wanted.
Link: https://skarnet.org/software/s6/s6-notify-fd-from-socket.html [1]
2026-07-15 22:55:25 +02:00
Hojjat
2329cea5c9
fix: input to cropped tiled windows should be bound to the tile
2026-07-15 22:55:05 +02:00
Graham Walker
b8807a541f
Fix detached active window hint
2026-07-15 13:16:28 -06:00
Ashley Wulber
8f82cade68
cleanup: remove attempts to force redraw
...
They seem to always fail anyways and it has no negative effect as far as I can tell
2026-07-15 14:48:33 -04:00
Victoria Brekenfeld
dec1ee8633
fixup: logic error
2026-07-14 18:16:50 -04:00
Victoria Brekenfeld
603c90b103
element/surface: Avoid scanning out translucent surfaces
2026-07-14 18:16:50 -04:00
Erik
7ee78d9c13
Forward axis relative direction to Wayland clients.
...
Libinput reports natural scrolling via AxisRelativeDirection. Qt sets
QWheelEvent::inverted() from wl_pointer.axis_relative_direction. COSMIC
was forwarding axis values but not the direction hint.
Tested on Fedora 44 COSMIC Wayland with Telegram Desktop (native Wayland),
natural scrolling enabled — horizontal touchpad swipes fixed.
Assisted-by: AI (root-cause analysis)
Signed-off-by: Erik <erik-balfe@users.noreply.github.com>
2026-07-13 21:19:27 +02:00
Victoria Brekenfeld
a69d8d2dba
Merge pull request #2490 from weblate/weblate-pop-os-cosmic-comp
...
Translations update from Hosted Weblate
2026-07-13 17:25:19 +02:00
Ilia Malanin
7a7c6b7fd4
fix: take into account pending maximized state when recalculating window geometry
2026-07-13 17:24:56 +02:00
Victoria Brekenfeld
80a440fcb0
Merge branch 'master' into weblate-pop-os-cosmic-comp
2026-07-13 17:19:34 +02:00
Tom Grushka
0596cce40d
remove redundant level condition; simplify level early return on ZoomMovement::Centered
2026-07-13 13:08:45 +02:00
Tom Grushka
4d14f5568f
improve comments
2026-07-13 13:08:45 +02:00
Tom Grushka
01c0cb020e
fix: a11y: magnifier: correct Centered/OnEdge focal-point math and refresh focal point at zoom-in
...
- I used AI to assist in research of the focal point computation formulae for OnEdge and Centered modes.
- I used the formulas found in [KDE's zoom magnifier](https://invent.kde.org/plasma/kwin/-/blob/master/src/plugins/zoom/zoom.cpp ) and converted them to Rust and the COSMIC focal point system.
- Remove unnecessary focal-point precomputation in `OutputZoomState::new`, because it is now updated on first zoom in anyway.
- Do focal point computation in Local coordinates in update_focal_point to eliminate local-global conversion confusion/ issues.
- ZoomMovement::OnEdge - single code path rewrite - old two-branch logic caused jumping and unpredictability at high zoom. Fixes [#2683 ](https://github.com/pop-os/cosmic-epoch/issues/2683 ), partially addresses [#2688 ](https://github.com/pop-os/cosmic-epoch/issues/2688 ).
- ZoomMovement::Centered - translation/clamp/invert - prevents "blow up" of calculation at zoom level > 2.0 that caused cursor to disappear off bottom right of screen. Fixes [#1503 ](https://github.com/pop-os/cosmic-comp/issues/1503 ).
- `is_level_change` - sets `previous_point` so that `animating_focal_point` interpolates instead of jumping. Still room for improvement (needs focal point recomputation per-frame during animation to prevent "boomerang" feel), but this is still an improvement over jumping.
- In `trigger_zoom`, call `update_focal_point` when `level > 1.0` - overlaps proposal in [#1859 ](https://github.com/pop-os/cosmic-comp/pull/1859 ) + the level gate to prevent stale focal point on zoom in. Fixes [#2511 ](https://github.com/pop-os/cosmic-comp/issues/2511 ) and [#1883 ](https://github.com/pop-os/cosmic-epoch/issues/1883 ). Partially addresses [#1420 ](https://github.com/pop-os/cosmic-comp/issues/1420 ) (item 1 only).
2026-07-13 13:08:45 +02:00
Victoria Brekenfeld
693d1ad775
shell/window: Fix radii for server-side decorations
2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
2971845d40
render/blur: Fix rotated outputs having cut off blur regions
2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
3e17157ccf
chore: update smithay
2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
1f48a5e866
shell/menu: Use new MenuColumn widget
2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
4f8aed4149
blur: Fix invalid matrix inversions
2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
0c805d9b30
chore: cleanup new blur code
2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
7fbeb8787f
examples: Fix new libcosmic build
2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
f6cb4519a0
render/blur: Cache native texture type
2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
c92b91221c
render/element: Support converting gl-textures
2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
1f0456a5af
render: Include OutputId in namespaces
2026-07-09 18:08:01 +02:00
Victoria Brekenfeld
361a2282c7
output: Add increasing output id
2026-07-09 18:08:01 +02:00
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