Commit graph

377 commits

Author SHA1 Message Date
Vukašin Vojinović
d41124a51d chore: clippy fixes 2026-07-18 09:09:30 +02: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
f6cb4519a0 render/blur: Cache native texture type 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
5ee2fa911a wayland: Support cosmic-corner-radius v2 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
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
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
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
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
Victoria Brekenfeld
106b50293b wayland/activation: Fix requests without active outputs 2026-06-18 18:29:37 +02:00
Skygrango
b6cab38528 wayland: implement pointer_warp_v1 2026-06-16 14:49:28 -06:00
Ian Douglas Scott
82dcd9a46a image-copy: Don't send 0x0 buffer params for cursor capture
Fixes panics in `xdg-desktop-portal-cosmic` when it tries to use cursor
capture, and an application hides the cursor.
2026-06-09 10:42:48 -07:00
Robin Nehls
2f7c34f29a feat: add config option for xdg activation behavior 2026-06-03 08:09:29 +02:00
Hojjat
56f84fba2d fix: follow the focus after alt+tab to another output 2026-06-02 12:14:39 -06:00
Hojjat Abdollahi
28ef6bdbc8
feat: support multiple fullscreen windows per workspace 2026-06-02 17:48:33 +02:00
Skygrango
208c2128cd wayland: implement new_constraint, remove_constraint and cursor_position_hint for PointerConstraintsHandler
new_constraint: check if the surface has pointer focus, keyboard focus, and if the pointer is within toplevel geometry or constraint region. If these conditions are met, then enable the constraint.

remove_constraint: apply last cursor position hint that saved in seat.

cursor_position_hint: save the cursor position hints provided by the client to the seat.
2026-06-01 07:52:42 -07:00
Victoria Brekenfeld
85630236fa xwm: Support sticky requests for unmapped windows 2026-05-19 19:26:25 +02:00
Ian Douglas Scott
4106904a7e chore: Update smithay with Dispatch2 2026-05-19 19:26:25 +02:00
KENZ
677be79635 Unconstrain the IME popup when it appeared, resized, requested to
repositioned

- places the IME popup correctly.
- adjusts its position to considering the output (screen) rect.
  - offset if right edge overflows
  - flip vertically if bottom edge overflows
2026-05-07 15:00:24 -06:00
KENZ
7a10fb1cc8 refactor: change PopupSurface args to PopupKind of position_popup_within_rect() paths
- to support InputMethod popup kind in later commit
2026-05-07 15:00:24 -06:00
KENZ
f62c88a3d9 refactor: unify popup positioning logic for tiled layout into
position_popup_within_rect()
2026-05-07 15:00:24 -06:00
KENZ
1a57c104f6 refactor: extract positioning popups within global rect logic
- preparation to make unconstrain_popup() PopupKind agnostic
2026-05-07 15:00:24 -06:00
KENZ
977d4c2dca refactor: make get_popup_toplevel() PopupKind agnostic
- for preparation to make unconstrain_popup() PopupKind agnostic.
2026-05-07 15:00:24 -06:00
Ian Douglas Scott
472ffa5f30 image-copy: Don't panic if ImageCaptureSourceKind udata is undefined
We want to merge this when updating Smithay to have
https://github.com/Smithay/smithay/pull/1961, so that we don't panic the
the output/toplevel already has no strong references when the source is
created.
2026-04-27 14:51:46 -07:00
Hojjat
3e84968dac fix: clean up pending_windows for surfaces that were never mapped 2026-04-07 16:14:52 +02:00
Victoria Brekenfeld
e1ff0309c7 wayland/image-copy-capture: Break toplevel reference cycle 2026-03-27 12:45:43 +01:00
Ian Douglas Scott
7fa5bd6b91 image-copy: Do not panic on ImageCaptureSourceKind::Destroyed
The way this was handled previously is incorrect. We should still handle
creation of a capture session, just send `stopped` when it is created.

This can be tested by creating a capture source and session for a
workspace that has been removed. Toplevel and output sources have a
different issue in `smithay`: https://github.com/Smithay/smithay/pull/1961

Should fix https://github.com/pop-os/cosmic-epoch/issues/3319.
2026-03-26 18:23:20 +01:00
Vukašin Vojinović
2ca99c670a chore: clippy 2026-03-18 18:19:03 +01:00
Ian Douglas Scott
40c7eb26cd image-copy: Store offscreen buffer for shm capture in session
Avoid allocating a GPU buffer every frame, and avoid re-rendering
everything.
2026-03-18 01:34:33 +01:00
Ian Douglas Scott
3ca15a5e1e image-copy: Always use GlesRenderbuffer in render_session 2026-03-18 01:34:33 +01:00
Ian Douglas Scott
c0c7a26178 Move some trait bounds to definition of AsGlowRenderer
Everything implementing `AsGlowRenderer` implements `Renderer` and various
other traits, and by making `AsGlowRenderer` depend on these trait,
things requiring `AsGlowRenderer` can avoid listing those traits as
well.

Looks like implied trait bounds still won't work for the
`Self::TexutureId` and `Self::Error` requirements? So those are not
included here.
2026-03-18 01:34:33 +01:00
Ian Douglas Scott
0414e4fec1 image-copy/render: Pass age to render_output for shm buffer too
Age for shm capture is defined as `0` in `render_session()`, so we don't
need to also set it 0 here.
2026-03-18 01:34:33 +01:00
Ashley Wulber
b28a435b18 fix(headerbar): double click handling & resize only on press 2026-03-13 15:56:42 -04:00
Ian Douglas Scott
abf9ee504b Revert "image-copy/render: Pass age to render_output for shm buffer too"
This reverts commit d902f4b5c3.

Accidentally pushed to wrong branch.

If only branch protection has a way to prompt for overriding rule on
push...
2026-03-11 20:08:37 -07:00
Ian Douglas Scott
0d6c83db31 Revert "Move some trait bounds to definition of AsGlowRenderer"
This reverts commit c860fcddad.

Accidentally pushed to wrong branch.

If only branch protection has a way to prompt for overriding rule on
push...
2026-03-11 20:08:33 -07:00
Ian Douglas Scott
87a7d20b33 Revert "image-copy: Always use GlesRenderbuffer in render_session"
This reverts commit 398fcc896b.

Accidentally pushed to wrong branch.

If only branch protection has a way to prompt for overriding rule on
push...
2026-03-11 20:08:26 -07:00
Ian Douglas Scott
398fcc896b image-copy: Always use GlesRenderbuffer in render_session 2026-03-11 10:16:02 -07:00
Ian Douglas Scott
c860fcddad Move some trait bounds to definition of AsGlowRenderer
Everything implementing `AsGlowRenderer` implements `Renderer` and various
other traits, and by making `AsGlowRenderer` depend on these trait,
things requiring `AsGlowRenderer` can avoid listing those traits as
well.

Looks like implied trait bounds still won't work for the
`Self::TexutureId` and `Self::Error` requirements? So those are not
included here.
2026-03-11 10:14:40 -07:00
Ian Douglas Scott
d902f4b5c3 image-copy/render: Pass age to render_output for shm buffer too
Age for shm capture is defined as `0` in `render_session()`, so we don't
need to also set it 0 here.
2026-03-10 20:14:27 -07:00
Vukašin Vojinović
8768e46577 chore: update dependencies
Includes the `calloop` timer buildup fix.
2026-02-23 15:56:25 +01:00
Clayton Craft
fa3ffd18da chore: Update smithay
Fixes #2081

This also reverts commit 0f7e53b, because the upstream commit (2e00119)
that introduced this thing was reverted
(https://github.com/Smithay/smithay/pull/1941).

There was also change in the cursor_capture_constraints signature in
smithay 7d992793f.
2026-02-23 13:21:08 +01:00
Levi Portenier
00bf8fe215
Merge branch 'master' into fullscreen_panic_fix 2026-02-13 13:42:17 -07:00
Levi Portenier
af40d8ab24
Merge pull request #2069 from mayakwd/fix/popup-reconfiguration
fix: Remove redundant configure in popup reposition_request
2026-02-11 13:13:45 -07:00