Commit graph

118 commits

Author SHA1 Message Date
Jeremy Soller
aac2c31a38
Fix NextOutput and PreviousOutput when Shell::activate returns None 2023-09-28 13:21:44 -06:00
Victoria Brekenfeld
4709a1d684 shell: Have Move-shortcut for floating layer and fullscreen windows 2023-09-20 18:57:58 +02:00
Victoria Brekenfeld
3d10ca6105 shell: Handle focus shortcuts for floating layer 2023-09-20 16:30:37 +02:00
Victoria Brekenfeld
4e1c16c384 fullscreen: Use CosmicWindow for decorations 2023-09-18 18:51:21 +02:00
Victoria Brekenfeld
abf430f956 shell: Rework fullscreen/maximize 2023-09-14 19:41:36 +02:00
Victoria Brekenfeld
9ad69fe119 tiling: Add logic to move on swap with empty workspace 2023-09-12 20:53:35 +02:00
Victoria Brekenfeld
7ba52d7162 shell: Refresh focus-stacks after swap 2023-09-12 20:53:35 +02:00
Victoria Brekenfeld
1251b7e9f7 shell/tiling: Implement window swap mode 2023-09-12 20:53:35 +02:00
Ian Douglas Scott
6247918cad Send relative_pointer in frame with pointer; update Smithay
The protocol doesn't specify this, but XWayland does assume relative
pointer events are part of a frame.

This works for now, though a better solution will be needed in Smithay
to also handle pointer constraints where a relative motion may occur
alone, etc.

This seems to fix https://github.com/pop-os/cosmic-comp/issues/159.
2023-09-08 11:10:53 -07:00
Ian Douglas Scott
c68625ff78 Add pointer gestures support 2023-09-05 13:47:07 -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
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
Ian Douglas Scott
4a780cb343 Update smithay-egui and fix compilation of debug 2023-08-07 08:47:51 -07:00
Victoria Brekenfeld
4ee2763139 chore: Formatting updates 2023-07-31 17:36:32 +02:00
Victoria Brekenfeld
85edfc7141 tiling: Mouse dragging visuals 2023-07-21 16:08:55 +02:00
Victoria Brekenfeld
f00dda7591 shell: Allow overview to be triggered by pointer 2023-07-17 21:11:45 +02:00
Victoria Brekenfeld
a8a5ee466a shell: Generalize move grab 2023-07-17 21:11:23 +02:00
Victoria Brekenfeld
b818a68a91 tiling: Properly handle resizing using a ptr device 2023-07-11 16:33:23 +02:00
Victoria Brekenfeld
235248d445 kms: Add key repetition for shortcuts 2023-07-07 17:46:10 +02:00
Victoria Brekenfeld
f5dcd97c42 input: Wire up internal resize action 2023-07-06 00:08:46 +02:00
Victoria Brekenfeld
997223f20a input: Filter resize mode key combinations 2023-07-06 00:08:46 +02:00
Victoria Brekenfeld
8c52fc6eb1 input: Add resize mode actions 2023-07-06 00:04:34 +02:00
Victoria Brekenfeld
b400939dd9 shell: Introduce MoveResult to implement stacking 2023-06-30 15:15:21 +02:00
Victoria Brekenfeld
b3401eb18a shell/tiling: semi-working stacking 2023-06-30 15:15:21 +02:00
Victoria Brekenfeld
56131b13ae tiling: Allow selecting groups 2023-06-05 18:42:05 +02:00
Victoria Brekenfeld
506334e1af Fix #123 2023-05-26 11:47:45 +02:00
Michael Aaron Murphy
9d0e1e88ce
fix(input): zombie process from Action::Spawn
Each invocation of `Action::Spawn` was spawning a process without
waiting on the child; resulting in an accumulation of zombie sh
processes. This will create background threads which waits on the child
to ensure that they are reaped on exit.
2023-05-25 22:29:07 +02:00
Victoria Brekenfeld
2f6d4da712 tiling: Consider direction when moving across workspaces and outputs
Fixes second case of #113.
2023-05-25 19:40:13 +02:00
Victoria Brekenfeld
8201ba023d input: Consider any unpressed modifier to cancel overview mode
Fixes #115.
2023-05-25 19:37:23 +02:00
Victoria Brekenfeld
be918152d5 shell: Implement Workspace Layout 2023-05-25 00:15:42 +02:00
Victoria Brekenfeld
7b3ac7fa77 render: Implement workspace transitions 2023-05-25 00:15:42 +02:00
Victoria Brekenfeld
adc28eeb93 tiling: Animate and enable/disable hints 2023-05-25 00:15:42 +02:00
Victoria Brekenfeld
659933b039 xwm: Don't do multiple 2023-03-09 14:50:57 +01:00
Victoria Brekenfeld
1c62d6d061 debug: Add actual profiling for rendeirng 2023-03-06 19:39:08 +01:00
Victoria Brekenfeld
26743d6bdc debug: Add profiler view 2023-03-06 19:38:13 +01:00
Victoria Brekenfeld
35de500c00 chore: update smithay + switch to tracing 2023-02-24 17:43:07 +01:00
Victoria Brekenfeld
1a05121498 input: special case Focus/Move actions for fullscreen windows 2023-02-14 15:47:39 +01:00
Victoria Brekenfeld
05fadbbc85 input: Properly constrain top/left edge of outputs 2023-02-14 15:47:39 +01:00
Victoria Brekenfeld
21db472f8b deps: Update smithay & relative motion events 2023-01-30 23:19:36 +01:00
Victoria Brekenfeld
5d4afa5641 xwm: Simplify override-redirect handling 2023-01-27 19:51:23 +01:00
Victoria Brekenfeld
4940d0823d xwayland: Fix display env variable race 2023-01-25 13:20:17 +01:00
Victoria Brekenfeld
5b644b59f7 input: Add SendToWorkspace action 2023-01-24 19:22:00 +01:00
Victoria Brekenfeld
e5f4911bb6 xwayland: Expose DISPLAY variable to clients 2023-01-24 18:08:52 +01:00
Victoria Brekenfeld
5dfefedb02 xwayland: Add input handling for override redirect windows 2023-01-23 20:32:37 +01:00
Victoria Brekenfeld
0af8d5eb2d screencopy: Fix cursor events for absolute motion 2023-01-23 20:32:10 +01:00
Victoria Brekenfeld
7092c523f5 deps: Update smithay
- Use new GAT frame
- Bugfixes
- Finish window debug overlay
2022-11-28 17:50:41 +01:00
Victoria Brekenfeld
f4476b10f2 shell: Fix global+static mode 2022-11-23 16:10:37 +01:00
Victoria Brekenfeld
8430566e5e input: Fix variety of output shortcuts 2022-11-23 16:10:37 +01:00
Victoria Brekenfeld
9c41c80345 debug: Remove old debug overlay 2022-11-23 16:10:37 +01:00
Victoria Brekenfeld
7a034c8e52 deps: smithay + egui update 2022-11-23 16:10:37 +01:00