Commit graph

47 commits

Author SHA1 Message Date
Vukašin Vojinović
2ca99c670a chore: clippy 2026-03-18 18:19:03 +01:00
Ashley Wulber
efe0b45fbb chore: update deps 2026-03-13 15:56:42 -04:00
Ashley Wulber
8fdef03d88 wip: cosmic-randr-shell empty serial number for now 2026-03-13 15:56:42 -04:00
Ashley Wulber
a48c4fc47d chore: updates after iced rebase 2026-03-13 15:56:42 -04:00
Vukašin Vojinović
8768e46577 chore: update dependencies
Includes the `calloop` timer buildup fix.
2026-02-23 15:56:25 +01:00
Lysander Treumann
4a2e76a2cb Moved default of WorkspaceMode from default implementation of WorkspacesConfig into WorkspaceMode declaration. WorkspaceConfig's default can then be derived. 2026-02-11 15:24:01 -07:00
Lysander Treumann
d7ae6dcb67 Added "action on typing" to workspaces configuration. 2026-02-11 15:24:01 -07:00
Victoria Brekenfeld
ea470f0a4b config: Update default for appearance_settings 2026-01-13 19:12:22 +01:00
Victoria Brekenfeld
2adebb5fe1 config: Add and propagate appearance_config 2026-01-13 19:12:22 +01:00
Vukašin Vojinović
bb05037db2 chore: bump MSRV to 1.90 2025-12-22 16:29:22 +01:00
Vukašin Vojinović
1f7f0c70b7 chore: format for Rust 2024 2025-10-22 23:55:11 +02:00
Vukašin Vojinović
3b70bc0265 chore: update dependencies 2025-10-22 23:55:11 +02:00
Michael Aaron Murphy
64a9c1badf fix(config): move cosmic-randr-shell to main branch 2025-09-17 17:58:01 +02:00
Ashley Wulber
458f5f4dcf refactor(config): fix no features enabled 2025-09-09 10:01:43 -04:00
Ashley Wulber
2ccdb6c93d cleanup 2025-08-26 11:30:56 -04:00
Ashley Wulber
2917e8b30c filter unknown 2025-08-26 11:30:56 -04:00
Ashley Wulber
bb8e066d6d feat(config): load cosmic-randr output Lists 2025-08-26 11:30:56 -04:00
Ashley Wulber
416b66b776 refactor(output config): move to config crate
this allows the greeter to easily sync to the user config
2025-08-26 11:30:56 -04:00
Victoria Brekenfeld
4a385d5535 config: Allow overriding touchpad state 2025-08-22 18:23:05 +02:00
Ian Douglas Scott
e54f4b4963 protocols/workspace: Set ext workspace id for pinned workspace
The `id` is defined to be sent only once, on creation of the handle or
later. And only for workspaces that are "likely to be stable across
multiple sessions".

Set we add an `id` initially for pinned workspaces, and add one when the
workspace is pinned.

The `id` is not supposed to be human readable, so we just use a random
value.
2025-08-22 11:58:07 +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
7472351de0 feat: Allow fractional xwayland client scale 2025-04-14 18:15:28 +02:00
Jacob Kauffmann
99bbd10168 Change default X11 eavesdropping to None 2025-04-04 22:33:12 +02:00
Victoria Brekenfeld
cbc4ad6fc2 xwayland: Allow eavesdropping on certain keyboard/pointer events 2025-04-02 17:26:09 +02:00
Carter Wobbe
fec4b3c235 config: Refactor WorkspaceLayout to use the Default macro 2025-03-31 18:23:13 +02:00
Victoria Brekenfeld
83a7926748 a11y/zoom: Allow disabling scroll-shortcuts 2025-03-28 18:35:06 +01:00
Victoria Brekenfeld
b62e47ef8d a11y/zoom: Allow hiding the overlay 2025-03-28 18:35:06 +01:00
Victoria Brekenfeld
4d7b912a2d config: Update zoom config defaults 2025-02-20 23:51:55 +01:00
Victoria Brekenfeld
55d1ce5e3b config: Add zoom configuration 2025-02-20 23:51:55 +01:00
Paul Daniel Faria
288930c3fe Derive Eq for NumlockState
This will allow NumlockState to be used as a radio value in
cosmic-settings.
2025-02-17 18:00:09 +01:00
Daniel
2553810621
grabs: Snap Window Edges to Close Output Edges 2025-02-14 11:58:09 +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
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
Michael Aaron Murphy
6209e32f7b chore(config): enable tap-to-click and disable-while-typing by default for touchpads 2024-07-31 09:53:42 +02:00
LazyTanuki
dcc4873e60 feat: configurable keyboard repeat rate and delay 2024-05-23 22:41:54 +02:00
Ashley Wulber
5eb5af4675
feat: add tiling variables to cosmic config 2024-02-08 20:25:18 +01:00
Victoria Brekenfeld
c0f7524a09 shell: Drop static workspaces 2024-02-07 21:40:23 +01:00
Victoria Brekenfeld
54f2d2c67e chore: Update smithay 2024-02-06 15:31:01 +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
Ian Douglas Scott
81efd42dd5 Use cosmic-config for dynamic workspace settings
`WorkspaceAmount`, `WorkspaceMode`, and `WorkspaceLayout` can all be
changed dynamically now.
2023-10-27 12:36:40 -07:00
Ian Douglas Scott
20159a6c8c input: Add a scroll_factor config option
This is not a setting handled by libinput; we have to scale the
scrolling ourselves.

This should match the behavior of the `scroll_factor` defined in
sway-input(5).
2023-09-01 12:36:12 -07:00
Ian Douglas Scott
8c3a3a9d1a cosmic_comp_config: Some trait implementations and re-exports 2023-08-31 16:55:58 -07:00
Ian Douglas Scott
56467755a8 cosmic-comp-config crate, and default input config
This adds a `input-default` setting, which is used for input settings if a
device isn't set in `input-devices`. More awkwardly, it also adds an
`input-touchpad` setting, which is used instead of `input-default` for
touchpad devices, so we can separate mouse and touchpad settings even
though they use the same capability and settings.

This no longer sets the input config, and only reads it. If we add a UI
for per-device config, we'll need some IPC mechanism to list connected
devices. (Assuming cosmic-settings can't use libinput directly for that.)

This moves `InputConfig` and `XkbConfig` to a new `cosmic-comp-config`
crate, so they can be used in `cosmic-settings`.
2023-08-31 13:59:49 -07:00