Victoria Brekenfeld
2c9857fdfc
shaders: Use half-pixels for the outline
2026-01-13 19:12:22 +01:00
Victoria Brekenfeld
fc7bbd7814
render/shadow: Add physical 1px safety margin
2026-01-13 19:12:22 +01:00
Victoria Brekenfeld
40d7fea1cc
render: Fix gap between outline and windows
2026-01-13 19:12:22 +01:00
Victoria Brekenfeld
b6f0855a31
shell/elements: Fix corners order for clipping/shadows
2026-01-13 19:12:22 +01:00
Victoria Brekenfeld
59fd732982
shell/elements: Handle clipping and shadows
2026-01-13 19:12:22 +01:00
Victoria Brekenfeld
94d49210e6
shaders: Add drop-shadow shader
2026-01-13 19:12:22 +01:00
Victoria Brekenfeld
2f39c9682c
shaders: Add clipped-surface shader
2026-01-13 19:12:22 +01:00
Vukašin Vojinović
1f7f0c70b7
chore: format for Rust 2024
2025-10-22 23:55:11 +02:00
Vukašin Vojinović
b6c5d00bec
cargo fmt
2025-10-22 23:55:11 +02:00
Vukašin Vojinović
0847247c33
chore: clippy
2025-10-22 23:55:11 +02:00
Ashley Wulber
3465ce7602
feat: corner radius for CosmicMapped
2025-10-03 20:11:16 +02:00
Ashley Wulber
c6320eec0c
fix: support per-corner radius
...
also adjusts the radius by half of the outline thickness. I believe this is the radius at the center of the outline.
2025-10-03 20:11:16 +02:00
Ashley Wulber
b3aa10436a
feat: corner-radius protocol support
2025-10-03 20:11:16 +02:00
Victoria Brekenfeld
7684cd1b2c
render: Fix shader obj leak
2025-09-08 14:47:06 +02:00
Ian Douglas Scott
905d021552
screencopy: Use send_success_when_ready for other forms of capture
...
A little annoying to add a `loop_handle` argument to `render_output`,
but generally straightforward.
2025-08-21 17:09:49 +02:00
Ian Douglas Scott
28e9024681
kms/surface: Define a PendingImageCopyData, instead of using tuple
...
Adding anything else to this tuple is awkward; defining a simple struct
makes this cleaner.
This also adds a `sync` property, which will come in handy later.
Containing simply the same-named argument that was passed to
`submit_buffer`.
2025-08-21 17:09:49 +02:00
Ian Douglas Scott
f0e0084608
Update smithay, and adjust to use sync points from blit calls
2025-08-21 17:09:49 +02:00
Vukašin Vojinović
7f7ab8bcbe
chore: Rust 2024 edition
...
Set the formatting style to 2021 edition to avoid disrupting existing work.
Remove when possible.
2025-08-21 13:10:11 +02:00
Ian Douglas Scott
2fbf0081ea
Fix compile warnings on nightly
...
Should fix CI test.
2025-08-12 18:03:27 -04:00
Victoria Brekenfeld
be1424f1ca
render/wayland: filter scanout candidates by frametime estimation
2025-08-07 19:40:23 +02:00
Victoria Brekenfeld
adedb705e7
shell: handle fullscreen windows on a dedicated layer
...
I hoped to split this up into multiple commits, but the api
changes to `shell/workspace.rs` were to invasive to feasibly do this.
Here is a rough list of changes:
- Fullscreen windows aren't mapped to other layers anymore
- This they need their own logic for:
- Sending frames
- Dmabuf Feedback
- Primary outputs
- On commit handlers
- cursor tests
- They get their own unmap/remap logic
- They get a new restore state similar to minimized windows
- Refactored the minimized window state to reuse as much as possible
here
- They need to be part of focus stacks, which means adjusting them
to a new type `FocusTarget` as they previously only handled
`CosmicMapped`.
- Various shell handlers (minimize, move, menu) now have dedicated
logic for fullscreen surfaces
- This was partially necessary due to relying on CosmicSurface now,
partially because they should've had their own logic from the
start. E.g. the context menu is now reflecting the fullscreen
state
- Fullscreen windows may be rendered behind other windows now, when they
loose focus.
- This needed changes to input handling / rendering
2025-07-04 19:45:54 +02:00
Ian Douglas Scott
fa4bffdbe6
Add cursor_image_status/set_cursor_image_status to SeatExt
...
The `cursor_image_status()` function saves some duplication in various
places. The `set_cursor_image_status()` saves a bit less, but is also
handy.
2025-06-10 19:24:05 +02:00
Victoria Brekenfeld
465813c1c5
shell: Using parking_lot's RwLock for fairness guarantees
2025-05-27 20:00:21 +02:00
Ian Douglas Scott
982af8ff10
Update smithay with ContextId changes
...
The new type bounds seem to be addressable using `AsGlowRenderer`.
Though things like this will need a different solution when we want to
support Pixman rendering.
2025-04-29 14:42:07 +02:00
Victoria Brekenfeld
7c222ae6d1
debug: Fix crashes and deadlocks
2025-04-28 18:03:09 +02:00
Victoria Brekenfeld
2cbe89d89d
xwayland: Set scaled cursor size via xsettings
2025-04-16 21:06:51 +02:00
Victoria Brekenfeld
de1e528ba7
render/cursor: Don't round cursor coordinates early
2025-04-16 21:06:51 +02:00
Victoria Brekenfeld
e6a3f5373c
render/cursor: Correctly convert hotspot coordinates
2025-04-16 21:06:51 +02:00
Victoria Brekenfeld
0ba0a0cdaa
a11y/zoom: zoom level per output
2025-03-28 18:35:06 +01:00
Victoria Brekenfeld
7a8577592d
kms: Support screencopy cursor modes with active filters
2025-03-24 19:10:52 +01:00
Victoria Brekenfeld
7373b3f513
backend: Support screen filters in nested mode
2025-03-24 19:10:52 +01:00
Victoria Brekenfeld
18335c6758
kms: Refactor out postprocessing helpers
2025-03-24 19:10:52 +01:00
Ian Douglas Scott
b52d84dbd3
Call underlying_storage of TextureRenderElement without mapping
...
This was mapping `UnderlyingStorage::Memory` to `None`. I don't see any
reason for this. Though this also shouldn't change behavior since
`TextureRenderElement` doesn't provide `underlying_storage` currently.
2025-03-24 19:10:52 +01:00
Ian Douglas Scott
1387535252
Fix dependency_on_unit_never_type_fallback warning on latest Rustc
...
Apparently in Rust 2024, the inferred type here would be `!`, which
doesn't implement `Default`. Explicitly use `()` instead.
https://doc.rust-lang.org/nightly/edition-guide/rust-2024/never-type-fallback.html
2025-03-14 17:50:17 +01:00
Peter Krull
ad2cba324e
fix: Remove extra scaling of borders
2025-03-12 16:55:00 +01:00
Victoria Brekenfeld
95b27637ae
chore: smithay update
2025-03-12 16:50:58 +01:00
Victoria Brekenfeld
909ca8cf9d
zoom: Seperate animating/current focal_point
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
f72d2b91f3
shell: Add zoom UI
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
531a1c951f
zoom: Handle multiple outputs
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
2e2943d99c
render: Scale contents according to zoom_level
2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
afae9bb962
render: Scale indicator radius with scale
2025-02-07 13:32:30 +01:00
Victoria Brekenfeld
abda6619ff
render/cursor: Follow selected scale instead of wanted scale
2025-02-07 13:32:30 +01:00
Ian Douglas Scott
005093b622
Update smithay-egui, egui
2025-01-15 20:08:02 +01:00
Ian Douglas Scott
b685512127
Migrate away from Rectangle::from_loc_and_size
...
Deprecated in `smithay` by https://github.com/Smithay/smithay/pull/1621 .
2025-01-07 12:50:35 +01:00
Victoria Brekenfeld
42af2af37d
render: Fix race during startup
2025-01-07 12:09:42 +01:00
Victoria Brekenfeld
db13eea91c
shell: Allow active workspace to be None
2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
8b87d6524e
kms: Use new DrmOutput api
2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
f12f4db0e1
chore: Update smithay
2025-01-06 20:23:05 +01:00
Victoria Brekenfeld
51c8588f89
render: Use render_input_order
2024-10-22 19:43:47 +02:00
Ian Douglas Scott
a96394f7a6
Update egui, smithay-egui, smithay
2024-10-02 23:55:10 +02:00