Commit graph

1961 commits

Author SHA1 Message Date
Levi Portenier
7bb5ae7cfe
Merge pull request #2175 from FreddyFunk/feat/workspace-overview-key
feat(input): bind XF86LaunchA to workspace overview
2026-03-12 12:35:10 -06: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
Levi Portenier
18a8859fd7
Merge pull request #2182 from RipleyTom/xwayland_scaling
x11: fix fractional scaling
2026-03-11 16:13:01 -06: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
RipleyTom
b1b09e12c4
x11: fix fractional scaling when fract is 0.75
Fractional scaling was broken when the fractional part was .75 as
the round rounded up the WindowScalingFactor to the upper bound and
applied extra scaling in addition to the one in UnscaledDPI (1.75 *
2 for 175% scaling instead of 1.75 * 1)
2026-03-11 06:24:15 +01: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
mikairyuu
1dc9c53a41 x11: stop remapping minimized windows on restore
The remap-on-restore workaround was introduced in 3b9d0ce
("HACK: Remap minimized X11 windows on restore"), but forcing an
unmap/map cycle on unminimize now regresses Steam: restoring a
non-fullscreen window can leave the main surface black while input
and tooltips still work.

Keep the existing X11 hidden-state handling and only drop the
forced remap cycle. This preserves the newer minimize/unminimize
signaling for X11 clients while avoiding an extra restore-time
remap.
2026-03-10 17:06:28 +01:00
Frederic Laing
d70d2a7be9
feat(input): bind XF86LaunchA to workspace overview 2026-03-09 22:09:49 +01:00
RoyalOughtness
98cca4f3b7 feat: add --no-xwayland argument for running without Xwayland
This leaves the default behavior in place. When --no-xwayland
is not passed, Xwayland is started. If it is passed, then
starting Xwayland is skipped.
2026-03-09 12:17:13 -06:00
Victoria Brekenfeld
7aa0942ec1
Merge pull request #2145 from weblate/weblate-pop-os-cosmic-comp
Translations update from Hosted Weblate
2026-03-09 12:27:03 +01:00
Hosted Weblate
54c107ebf8
i18n: translation updates from weblate
Co-authored-by: Aman Alam <aalam@users.noreply.hosted.weblate.org>
Co-authored-by: Deleted User <noreply+129037@weblate.org>
Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Hosted Weblate user 130202 <yakup@users.noreply.hosted.weblate.org>
Co-authored-by: Jiri Grönroos <jiri.gronroos@iki.fi>
Co-authored-by: Joonas Tuomi <joonastapanituomi@gmail.com>
Co-authored-by: Tommi Nieminen <translator@legisign.org>
Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-comp/de/
Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-comp/fi/
Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-comp/pa/
Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-comp/tr/
Translation: Pop OS/COSMIC Comp
2026-03-08 09:09:50 +00:00
Victoria Brekenfeld
253b44f0b8
Merge pull request #2142 from weblate/weblate-pop-os-cosmic-comp
Translations update from Hosted Weblate
2026-02-27 12:37:41 +01:00
Hosted Weblate
a4b4f772e6
i18n: translation updates from weblate
Co-authored-by: lorduskordus <lorduskordus@gmail.com>
Co-authored-by: yakup <mtopac2018@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-comp/cs/
Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-comp/tr/
Translation: Pop OS/COSMIC Comp
2026-02-27 01:09:59 +01:00
Ilia Malanin
3f68eee846 shell: Extract FloatingLayout::snap_to_corner to deduplicate snap restore logic 2026-02-24 00:55:49 +01:00
Ilia Malanin
60ecf70910 shell: Add comments explaining pre-set fullscreen before unmap 2026-02-24 00:55:49 +01:00
Ilia Malanin
7f33014710 format: Fixed PR formatting 2026-02-24 00:55:49 +01:00
Ilia Malanin
244111330b shell: Preserve maximized/snapped state on move between workspaces 2026-02-24 00:55:49 +01:00
Ilia Malanin
4565514e76 shell: Preserve snapped state through fullscreen/minimize round-trips 2026-02-24 00:55:49 +01:00
Ilia Malanin
744e0da6f9 shell: Pre-set fullscreen state before unmapping maximized/snapped windows
Fixes #1642
2026-02-24 00:55:49 +01: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
Hosted Weblate
769ed4b29c i18n: translation updates from weblate
Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Co-authored-by: Feike Donia <feikedonia@proton.me>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Marko X <duffsd@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-comp/de/
Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-comp/nl/
Translation: Pop OS/COSMIC Comp
2026-02-23 12:47:21 +01:00
Levi Portenier
ef14b7e294
Merge pull request #1902 from iexavl/fullscreen_panic_fix
Fullscreen request unreachable code crash
2026-02-17 09:01:38 -07:00
Hosted Weblate
b559b2c1ee i18n: translation updates from weblate
Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Co-authored-by: Feike Donia <feikedonia@proton.me>
Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-comp/de/
Translation: Pop OS/COSMIC Comp
2026-02-17 16:12:43 +01:00
Ilia Malanin
110c11eff9 fix(keyboard): Fix keyboard shortcuts for non-Latin layouts 2026-02-17 12:09:38 +01:00
Hosted Weblate
c569a35fc9 i18n: translation updates from weblate
Co-authored-by: Benmak Kizuna <benmakworkshop@gmail.com>
2026-02-16 12:53:51 +01:00
Levi Portenier
00bf8fe215
Merge branch 'master' into fullscreen_panic_fix 2026-02-13 13:42:17 -07:00
Jeremy Soller
a7b880ff8a Add pull request template 2026-02-13 12:35:27 -07:00
Levi Portenier
67c08ef692
Merge pull request #2077 from pop-os/cleanup-drag_noble
layout/tiling: Fix panic from tiling placeholders not being cleaned up
2026-02-12 12:57:27 -07:00
Hosted Weblate
0bd2d67d94 i18n: translation updates from weblate
Co-authored-by: Feike Donia <feikedonia@proton.me>
Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-comp/nl/
Translation: Pop OS/COSMIC Comp
2026-02-12 16:25:58 +01:00
Lysander Treumann
4a2e76a2cb Moved default of WorkspaceMode from default implementation of WorkspacesConfig into WorkspaceMode declaration. WorkspaceConfig's default can then be derived. 2026-02-11 15:24:01 -07:00
Lysander Treumann
d7ae6dcb67 Added "action on typing" to workspaces configuration. 2026-02-11 15:24:01 -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
Jakob
dca157ba16 Formatting 2026-02-11 17:36:02 +01:00
Jakob
c1de9b2f1a Made it so changing focus to different monitor takes cursor_follows_focus into consideration 2026-02-11 17:36:02 +01:00
Hosted Weblate
3414579256 i18n: translation updates from weblate
Co-authored-by: Fedorov Alexei <aleksejfedorov963@gmail.com>
Co-authored-by: Feike Donia <feikedonia@proton.me>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Jun Hwi Ku <siguning@gmail.com>
Co-authored-by: jickson john <jickson.john@gmail.com>
Co-authored-by: Димко <Term0@ukr.net>
Co-authored-by: 김유빈 <k.sein1016@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-comp/ko/
Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-comp/nl/
Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-comp/ru/
Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-comp/uk/
Translation: Pop OS/COSMIC Comp
2026-02-11 17:28:28 +01:00
Levi Portenier
3f6a9ab8ca
Merge pull request #2082 from pop-os/smithay-update_noble
Update `smithay` with fix for image-copy leak
2026-02-11 09:15:40 -07:00
Ian Douglas Scott
38c3840b00 Update smithay with fix for image-copy leak
Includes fix from https://github.com/Smithay/smithay/pull/1928.
2026-02-10 13:41:46 -08:00
Ian Douglas Scott
7e48191253 grabs/moving: Call cleanup_drag() unconditionally
Previously, drag placeholder would be removed in the call to
`tiling_layer.drop_window()` when dropping onto a tiling layer, but
would not be removed when dropping to a floating layer. Which would
leave a placeholder taking up space, and cause a panic on a future drag
operation.

Instead, call `cleanup_drag()` regardless, after `drop_window()`, to do
any cleanup that is still needed. This moves the call that was
previously added in 67d0a825.
2026-02-09 17:45:57 -08:00
Ian Douglas Scott
de7c78accd layout/tiling: Make cleanup_drag push tree only if something changes
Since `copy_clone()` preserved IDs, `traverse_pre_order_ids()` can be
called on the old tree, without collecting into a `Vec`.

Then we can also `copy_clone()` only if there's actually a change, and
also only call `push_tree()` in that case.

(Once the `LazyCell::get()` stabilization is released, we could use
that here, but `Option::get_or_insert_with()` may be more readable
anyway.)

With this, `cleanup_drag()` should be pretty low-cost, so we shouldn't
have to worry about whether or not it's redundant.
2026-02-09 17:07:03 -08:00
Ilia Malanin
f865ad7241 fix: Remove redundant configure in popup reposition_request 2026-02-07 23:38:32 +01:00
Ian Douglas Scott
2ea1186723 kms: Import on device supporting format, if not advertised device
Fixes https://github.com/pop-os/cosmic-epoch/issues/2978.

This reverses the part of
ca00df0b37 that made it
only try import on the advertised GPU. But this version avoids
initializing an EGL context simply to re-check the supported texture
formats.
2026-02-06 11:58:27 -08:00
Hosted Weblate
0e97ddbd00 i18n: translation updates from weblate
Co-authored-by: Baurzhan Muftakhidinov <baurthefirst@gmail.com>
Co-authored-by: Hafidz Nasruddin <hafidz@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Languages add-on <noreply-addon-languages@weblate.org>
Co-authored-by: Quentin PAGÈS <quentinantonin@free.fr>
Co-authored-by: Zahid Rizky Fakhri <zahidrizkyfakhri@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-comp/id/
Translate-URL: https://hosted.weblate.org/projects/pop-os/cosmic-comp/kk/
Translation: Pop OS/COSMIC Comp
2026-02-05 16:12:27 +01:00
Ian Douglas Scott
8e9f832fad wayland: Support wl_fixes protocol using new smithay support 2026-02-05 02:01:14 +01:00
Ian Douglas Scott
748ecb60a9 Add a profile-with-tracy-gpu feature 2026-02-05 02:01:14 +01:00
Ian Douglas Scott
e1342fb2e3 image-copy: Use "buffer age" of 1 for capture
The logic `age_for_buffer` used seems to be a misinterpretation of the
protocol.

The wording is a little unclear, but it seems tracking buffer age is the
responsibility of the client, and the client is required to accumulate
damage and pass it in `damage_buffer`.

Our clients initially weren't doing that correctly. I updated
xdg-desktop-portal-cosmic to use `damage_buffer` after testing on
wlroots, and cosmic-workspaces was recently updated as well.
2026-02-05 02:01:14 +01:00
Ian Douglas Scott
9bc1b6e1ee image-copy: Use damage_output() for additional damage
The important change here is that we now apply the additional damage
first, instead of using `.extend()` to add it after other elements. This
is important since `OutputDamageTracker` will ignore our damage elements
if there are behind an element with an opaque region.

This also makes things a bit simpler, especially `take_screencopy_frames()`,
which no longer needs a mutable references to extend then truncate.

The implementation of `OutputDamageTracker` isn't entirely clear, but as
far as I can tell this is intended to work, and it seems to work in some
testing.
2026-02-05 02:01:14 +01:00