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
Victoria Brekenfeld
b5a1a6d317
kms: Recreate graphics contexts on resume
2026-05-05 14:44:13 -06:00
Victoria Brekenfeld
9b89a1cc77
kms: Wipe dpms state on resume
2026-05-05 14:44:13 -06:00
Ian Douglas Scott
a5474e8c76
Fix clippy lints
...
Like Smithay, disable `clippy::collapsible_match`. It seems prone to
offering dubious suggestions.
2026-04-27 14:51:46 -07:00
Ian Douglas Scott
826ad9a91a
chore: Update smithay
2026-04-27 14:51:46 -07: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
Victoria Brekenfeld
53e0db28ac
chore: Update smithay
2026-04-27 14:51:46 -07:00
ZeusCraft10
21679f215a
fix: Prevent system hang on double Caps Lock press
2026-04-20 12:10:07 -06:00
Hojjat
fdf015cbcf
fix: consider SSD/tab height when calculating last server size
2026-04-20 12:08:47 -06:00
Victoria Brekenfeld
769ca13647
session: Make sure to mark the socket as CLOEXEC early
2026-04-20 19:24:19 +02:00
olekawaii
4df95190db
Add setting to toggle workspace wrapping
2026-04-14 17:42:57 +02:00
Hojjat
3e84968dac
fix: clean up pending_windows for surfaces that were never mapped
2026-04-07 16:14:52 +02:00
Victoria Brekenfeld
b1f59bd108
state: call image-copy cleanup on refresh
2026-03-27 12:45:43 +01:00
Victoria Brekenfeld
e1ff0309c7
wayland/image-copy-capture: Break toplevel reference cycle
2026-03-27 12:45:43 +01:00
Victoria Brekenfeld
615789cb14
surface: Introduce WeakCosmicSurface
2026-03-27 12:45:43 +01:00
Salvatore Gabriele La Greca
9ad5c916f3
layout/floating: allow size altering if window was maximized ( #2038 )
2026-03-27 11:56:34 +01:00
Ilia Malanin
06ece0fdcd
shell: Return surface from take_fullscreen for symmetry with remove_fullscreen
2026-03-27 11:56:04 +01:00
Ilia Malanin
07d584dadd
shell: Simplify early return with take_if
2026-03-27 11:56:04 +01:00
Ilia Malanin
90ce9cab90
shell: Preserve fullscreen state when moving window between workspaces
2026-03-27 11:56:04 +01:00
Ashley Wulber
1dab42ed56
fix: break from loop instead of unwrapping
2026-03-26 14:32:32 -04: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
Victoria Brekenfeld
5216eb50ba
chore: Fix remaining clippy lints
2026-03-24 16:23:43 +01:00
Victoria Brekenfeld
3a0b1ae5d2
Partially revert "x11: stop remapping minimized windows on restore"
...
This re-introduces the xwayland remap on un-minimize hack, but limited
to fullscreen applications.
2026-03-19 16:47:45 +01:00
Vukašin Vojinović
edc7758967
chore: update libcosmic
...
Improves header bar widget behavior.
2026-03-18 18:19:03 +01:00
Vukašin Vojinović
89a50197d2
refactor: use jiff instead of time
2026-03-18 18:19:03 +01:00
Vukašin Vojinović
2ca99c670a
chore: clippy
2026-03-18 18:19:03 +01:00
Vukašin Vojinović
d02051d16a
chore: remove unneeded dependencies
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
Hojjat
01f1785af5
fix: Ellipsize tab_text and use text widget instead of custom impl
2026-03-13 15:56:42 -04:00
Ashley Wulber
1eb6403575
chore: refactor iced utils into shared module
2026-03-13 15:56:42 -04:00
Ashley Wulber
2e08a871be
fix: iced widget event handling
2026-03-13 15:56:42 -04:00
Ashley Wulber
ba84ee9324
fix: text position in stack
2026-03-13 15:56:42 -04:00
Ashley Wulber
a48c4fc47d
chore: updates after iced rebase
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
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
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
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