Commit graph

108 commits

Author SHA1 Message Date
Ashley Wulber
8e3590fb4d feat: power button handling 2025-06-13 18:40:30 +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
96e9bf3b81 Initial support for workspace pinning and moving
Adds support for cosmic-workspace-v2 pin, unpin, move_after, and
move_before requests.

Both features need some work with workspaces span displays mode, so that
will need more fixes later.

We also want to generate a unique id for pinned workspaces to send in
the ext-workspace-v1 protocol. But that isn't a strict requirement for
anything. So I haven't yet fully implemented that. We'll also want to
persist other things, like workspace naming when that's added.

Overall, though, with separate workspaces per display, this is working
pretty well.
2025-04-24 12:45:50 +02:00
Victoria Brekenfeld
aeed8f256f xwayland: store and restore primary output 2025-04-14 18:15:28 +02:00
Victoria Brekenfeld
7472351de0 feat: Allow fractional xwayland client scale 2025-04-14 18:15:28 +02:00
Victoria Brekenfeld
cbc4ad6fc2 xwayland: Allow eavesdropping on certain keyboard/pointer events 2025-04-02 17:26:09 +02:00
Ian Douglas Scott
e74eafce2c Add EdidProduct, as user data for kms Outputs
This is the same as `libdisplay_info::edid::VendorProduct`, but with
implementations for `Serialize`, `Eq`, etc.
2025-04-02 13:40:56 +02:00
Victoria Brekenfeld
babb96ddfa a11y/zoom: Drop last state 2025-03-28 18:35:06 +01:00
Victoria Brekenfeld
ea09334ff7 config: Add screen-filter configuration and persistent state 2025-03-24 19:10:52 +01:00
Victoria Brekenfeld
d76f372c29 actions: Shortcut handling changes for #1005 2025-03-05 18:24:28 +01:00
Victoria Brekenfeld
b92879e60b zoom: Fix config/state changes 2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
55e4dd7c0f config: Handle zoom updates in Common::update_config 2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
58f96e6f4a config: Read/store zoom state 2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
55d1ce5e3b config: Add zoom configuration 2025-02-20 23:51:55 +01:00
Daniel
2553810621
grabs: Snap Window Edges to Close Output Edges 2025-02-14 11:58:09 +01:00
András
2678cf41b2 Reactivated num/caps-lock upon keyboard layour change 2025-02-13 11:45:47 +01:00
Paul Daniel Faria
f1f9d205be
Make numlock state on boot configurable
Make numlock state on boot configurable

This will expose 3 settings for numlock behavior:
1. Numlock is off on boot (this is the current default behavior)
2. Numlock is on on boot
3. Numlock will restore the state from the last boot

Fixes #369

* Address comments:

Get keyboard after create_seat called rather than returning from
create_seat.
Use constants rather than magic numbers for keypress.
Only save updated modifier state after keypresses are handled/skipped.

* Remove unused import, fold other into existing use block.
2025-02-12 14:35:22 +01:00
Victoria Brekenfeld
d9b15f1eb3 chore: ron 0.9 update 2025-02-07 13:32:30 +01:00
Michael Aaron Murphy
476470e6f1 fix(config): wrong config context for system actions on startup 2025-02-04 14:10:54 +01:00
Victoria Brekenfeld
870e5be2a6 kms: Use scaled sizes for placing new outputs 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
80965a61b9 kms: Adaptive VRR support 2024-11-27 09:37:01 +01:00
Ian Douglas Scott
90883c6ab1 Add cosmic_atspi_v1 protocol
Used to provide a backend for `AtspiDevice` in `at-spi2-core`, so Orca
keybindings can work.
2024-10-31 18:49:56 +01:00
Ian Douglas Scott
15a6425836
Set default output transform based on DRM panel orientation (#901) 2024-10-07 18:12:40 +02:00
Ian Douglas Scott
01d78689b5 Run cargo fmt 2024-09-19 16:23:25 +02:00
Richard Weber
4cf34fe312 Fix iter parameter change 2024-09-04 20:50:42 +02:00
Richard Weber
5482ff65e5 Add config reloading for tiling exceptions 2024-09-04 20:50:42 +02:00
Richard Weber
5fe9ba29eb Use new config from cosmic-settings-config 2024-09-04 20:50:42 +02:00
Richard Weber
e8947b8742 Move tiling exceptions to configuration file 2024-09-04 20:50:42 +02:00
skewballfox
7da0bc430a added cursor_follows_focus and focus_follows_cursor 2024-09-04 20:22:40 +02:00
Victoria Brekenfeld
971c28db38 xwayland: Add descaling option 2024-09-02 18:58:13 +02:00
julianbraha
52ad30c264 Remove unnecessary lifetimes 2024-08-30 17:53:56 +02:00
Victoria Brekenfeld
c299748997 config: Load toolkit config on start 2024-08-02 20:54:15 +02:00
Victoria Brekenfeld
fdde46febd config: watch CosmicTk 2024-07-26 16:40:28 +02:00
Michael Aaron Murphy
553c49b42b feat: runtime configurable keybindings 2024-07-01 15:20:23 +02:00
Victoria Brekenfeld
07d505d68f chore: Cleanup unused imports 2024-06-27 16:42:41 +02:00
Victoria Brekenfeld
26ccb653b7 output: Store position as u32 and offset bad configs 2024-06-27 12:34:51 +02:00
Victoria Brekenfeld
12fab6e220 kms: Don't block surface-threads on startup cond 2024-06-26 12:59:33 +02:00
Victoria Brekenfeld
f481112cf9 output-configuration: Test all outputs at once 2024-06-26 12:59:33 +02:00
LazyTanuki
dcc4873e60 feat: configurable keyboard repeat rate and delay 2024-05-23 22:41:54 +02:00
Victoria Brekenfeld
3eb6c02008 kms: Output mirroring 2024-05-07 12:25:15 +02:00
Victoria Brekenfeld
5d5a510691 state: Move shell behind RwLock 2024-04-16 18:50:54 +02:00
Victoria Brekenfeld
647deb81f1 shell: Move seats into shell 2024-04-16 18:50:54 +02:00
Louis Dispa
e625a22783
fix: Avoid crash on malformed keymap config (#361)
* fix: Crash on malformed config
* fix: Have default mappings when missing config

---------

Co-authored-by: Victoria Brekenfeld <4404502+Drakulix@users.noreply.github.com>
2024-03-18 11:36:33 +01:00
Victoria Brekenfeld
9540005577 input: Add minimize shortcut 2024-03-04 19:20:52 +01:00
Ashley Wulber
5eb5af4675
feat: add tiling variables to cosmic config 2024-02-08 20:25:18 +01:00
Ian Douglas Scott
dfd99b2c97 Change "xkb-config" to "xkb_config" in remaining place
It seems these two lines were omitted in
https://github.com/pop-os/cosmic-comp/pull/254, so it was reading the
"xkb_config" settings at startup, then watching "xkb-config".

The other settings seem to be consistent.

This should fix https://github.com/pop-os/cosmic-comp/issues/285 (though
it will also be necessary to edit "xkb_config", rather than the old
file.
2024-01-24 01:06:52 +01:00
Victoria Brekenfeld
c50607afd5 input: Add unbound shortcut to toggle sticky state 2024-01-02 13:24:07 +01:00
Ian Douglas Scott
45946fc75d Add map_to_output input option for touch devices 2023-12-28 10:37:08 +01:00
Ian Douglas Scott
aa9ec52e62 cosmic: Provide CosmicConfigEntry impl, use _ in property names
It seems to derive `CosmicConfigEntry`, we need to use `_` in property
names, because `_` isn't mapped to `-` and there doesn't seem to be a
mechanism like `#[serde(rename)]`.

It seems good to be consistent anyway. So this seems good to change,
unless we really like using `-` for names on disk, then cosmic-panel
needs to be changed.

`CosmicConfigEntry` also requires `PartialEq`, which is easy enough to
add.

This will break existing input settings, which will have to be
re-applied with the new locations. Cosmic-settings also need to be
updated for this.
2023-12-21 09:48:16 +01:00