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
2873d6b27e
fix(corner-radius): properly handle no value, and use geometry
2025-10-03 20:11:16 +02:00
Ashley Wulber
6f93b8774d
cleanup use statements
2025-10-03 20:11:16 +02:00
Ashley Wulber
f01ebf2f6f
refactor(corner-radius): corner_radius method for CosmicSurface
2025-10-03 20:11:16 +02:00
Ashley Wulber
8ddd14a54f
cleanup: remove TODOs
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
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
Victoria Brekenfeld
c3d2b5f0b7
element: Allow overriding default scanout behaviour
2025-08-07 19:40:23 +02:00
Victoria Brekenfeld
505d9c4039
tiling: fix missing output_enter/set_bounds on remap
2025-07-14 17:38:35 +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
e5fbf21fee
Remove debug prints that probably shouldn't have been merged
...
Also add a comment to the one place `eprintln!` is used to explain why
it's appropriate.
2025-07-03 14:25:49 +02: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
8a32571b8a
tiling: Exclude maximized windows from input/render
2025-03-07 18:52:03 +01:00
Victoria Brekenfeld
638684642c
stack: Remember position during continuous move action
2025-03-05 18:24:28 +01:00
Victoria Brekenfeld
e116f20396
stack: Remember previous position during focus navigation
2025-03-05 18:24:28 +01:00
Victoria Brekenfeld
0deab8d9ed
layout/tiling: Fix swap stack overlay offset
2025-02-07 13:32:30 +01:00
Victoria Brekenfeld
c59e9a3c52
layout/tiling: Fix swap indicator element order
2025-02-07 13:32:30 +01:00
Ian Douglas Scott
63995c4919
Remove CosmicMapped::stack_ref_mut
...
The methods of `CosmicStack` take `&self`, so this isn't actually needed
for anything.
2025-01-28 10:13:52 -08:00
Victoria Brekenfeld
75661c6ca7
tiling: Refactor blocker code
2025-01-16 19:44:12 +01:00
Victoria Brekenfeld
560d234036
tiling: Throttle resizes
2025-01-16 19:44:12 +01:00
Victoria Brekenfeld
cf26fe1c07
tiling: Fix flicker during resizing
2025-01-16 19:44:12 +01:00
Ian Douglas Scott
7f69244e07
Use Mul impl of Size
2025-01-07 12:50:35 +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
Ian Douglas Scott
61692b21ad
Run cargo format
2024-11-18 18:24:53 +01:00
Victoria Brekenfeld
0092dac08c
input: Use render_input_order
2024-10-22 19:43:47 +02:00
Victoria Brekenfeld
51c8588f89
render: Use render_input_order
2024-10-22 19:43:47 +02:00
Victoria Brekenfeld
4d215755f6
shell: Fix incomplete focus_stack after swapping
2024-09-10 21:10:02 +02:00
Victoria Brekenfeld
03430b76c5
shell: Allow moving groups between outputs
2024-09-10 20:51:08 +02:00
skewballfox
7da0bc430a
added cursor_follows_focus and focus_follows_cursor
2024-09-04 20:22:40 +02:00
julianbraha
52ad30c264
Remove unnecessary lifetimes
2024-08-30 17:53:56 +02:00
julianbraha
59b0e0e74e
Only use .cloned() on the element instead of the entire iterator
2024-08-29 16:39:39 +02:00
Victoria Brekenfeld
e5a7dfbdb0
layout/tiling: enumerate all children before swapping
2024-08-08 21:26:30 +02:00
Victoria Brekenfeld
450cc6a323
layout/tiling: Make swapping layout less confusing
2024-08-08 21:26:30 +02:00
Victoria Brekenfeld
1f8915f802
layout/tiling: Don't unmap before moving children
2024-08-08 21:26:30 +02:00
Ian Douglas Scott
94fecec9cb
Add a SplitRenderElements type, with useful methods
...
`(w_elements, p_elements)` tuples are used in a bunch of places. A
struct with named fields is generally an improvement just due to the
fact the order is non-obvious.
But we can also add methods. In particular,
`extend_from_workspace_elements` abstracts out some of the more
redundant code in `workspace_elements`.
It would be nice to avoid allocation everywhere, but iterators would
complicate lifetimes, run into issues with needing multiple mutable
borrows to things like the `Renderer`, and be awkward in certain
functions without generator syntax. In any case, cosmic-comp already
relies on allocating vectors here.
If this abstraction is commonly useful in compositors, perhaps it could
be moved to Smithay.
2024-07-15 17:12:05 +02:00
Victoria Brekenfeld
c506d94ac8
shell: Don't consider active overviews animations
2024-07-15 16:31:24 +02:00
Victoria Brekenfeld
c42a2ac279
tiling: Don't crash when swapping with group
2024-07-03 21:23:22 +02:00
Victoria Brekenfeld
b9a323c9ff
shell: Populate focus_stack when unstacking
2024-07-03 21:04:28 +02:00
Michael Aaron Murphy
553c49b42b
feat: runtime configurable keybindings
2024-07-01 15:20:23 +02:00
Victoria Brekenfeld
bd58481d19
element: Introduce CosmicMappedKey for safely hashing windows across threads
2024-06-26 12:59:33 +02:00
Victoria Brekenfeld
e78e199663
chore: Update smithay for thread-safety
2024-06-26 12:59:33 +02:00
Ian Douglas Scott
f2342f56c1
Update to latest Smithay version
2024-06-19 12:39:16 +02:00
Ian Douglas Scott
4f076e0753
Update smithay, with xwayland shell, Cow, etc.
2024-05-21 19:31:50 +02:00
Ian Douglas Scott
73b12194c0
Update smithay
2024-05-10 13:51:28 +02:00
Victoria Brekenfeld
5d5a510691
state: Move shell behind RwLock
2024-04-16 18:50:54 +02:00
Ian Douglas Scott
b18a3a8bc7
shell: Touch support for move grab
...
Touch support is still needed for other grabs. And SSDs (and libcosmic)
need to start move/menu/etc. based on touch.
2024-04-15 11:37:03 +02:00