Hojjat
7c02df250e
fix: restore the window to where it was before the drag
...
Restoring a window after snapping it to a corner, or maximizing it
should restore to where the window was before the drag, not after the
drop.
2026-05-13 12:43:02 +02:00
Peter Krull
b955789a4e
(fix) Reject resize_request on surfaces which are already being resized
2026-05-07 15:00:38 -06: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
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