Commit graph

167 commits

Author SHA1 Message Date
Victoria Brekenfeld
d341cb8b86 debug: Drop puffin integration 2024-03-21 17:49:06 +01:00
Ryan Brue
929f4fcb05 fix: clamp mouse position just below output size 2024-03-20 17:44:50 +01:00
Victoria Brekenfeld
9cb1adb37c Fix #339 2024-03-07 19:07:29 +01:00
Ian Douglas Scott
a204197e6d Set keyboard LEDs (capslock, numlock, scrollock)
It doesn't seem there's currently a way to iterate over input devices,
so this adds a `Vec` of libinput keyboard devices. When run with the
kms backend.

Not the most elegant solution, but it doesn't seem practical to add a
type generic to `Devices` given how backends are handled, and `Device`
can't be made into a trait object. Another trait could be added, but
this is fine, and technically should perform better (but if it actually
had to iterate over many keyboards, something has gone very wrong).
2024-03-06 13:18:09 +01:00
Victoria Brekenfeld
9540005577 input: Add minimize shortcut 2024-03-04 19:20:52 +01:00
Victoria Brekenfeld
3eb7e5f82e shell: implement minimize 2024-03-04 19:20:52 +01:00
Ian Douglas Scott
3036448c19 Update Smithay, with Window that supports X11 surfaces 2024-02-22 17:49:46 +01:00
Ashley Wulber
5eb5af4675
feat: add tiling variables to cosmic config 2024-02-08 20:25:18 +01:00
Victoria Brekenfeld
226bf7f49d workspace: Add tiling_state 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
b46b92611c Change keyboard repeat delay from 200ms to 600ms
This matches Sway, and seems to make it harder to accidentally paste
text twice.

Perhaps this should be configurable in some way (not sure how it's
usually handled). But this is probably a better default.
2024-01-24 01:12:54 +01:00
Ian Douglas Scott
9b98c20da2 Run cargo fmt 2024-01-18 20:27:51 +01:00
Victoria Brekenfeld
35264ca4a6 shell: Lift next_focus to mix-and-match sticky and floating windows 2024-01-02 13:24:07 +01:00
Victoria Brekenfeld
a829978ce9 shell: Lift move_current_element to consider sticky windows 2024-01-02 13:24:07 +01:00
Victoria Brekenfeld
f928f80f09 formatting fixes 2024-01-02 13:24:07 +01:00
Victoria Brekenfeld
a333753c96 shell: Lift toggle_stacking(_focused) to handle sticky windows 2024-01-02 13:24:07 +01:00
Victoria Brekenfeld
807f63bb72 shell: Lift/refactor (un)maximize, consider sticky windows 2024-01-02 13:24:07 +01:00
Victoria Brekenfeld
775e0ccbdc input: Simplify surface_under / lift element_under 2024-01-02 13:24:07 +01:00
Victoria Brekenfeld
c50607afd5 input: Add unbound shortcut to toggle sticky state 2024-01-02 13:24:07 +01:00
Ian Douglas Scott
cf9ae91e96 Initial support for tablet input 2024-01-02 12:44:10 +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
70bb9b9a2e Initial wl_touch support
`builtin_output` is similar to `get_builtin_output_name` in Sway.

For full support, we need support for touch targets/grabs, touch support
for SSDs, and a way to configure what output is mapped to what input.

But this is usable for apps that support touch on a laptop with a
touchscreen.
2023-12-28 10:37:08 +01:00
Ian Douglas Scott
144f8cbf69 Fix generation of axis_stop events
`axis_stop` should only be sent if the value is `Some(0)`, while this
also sent it for `None`. So every scroll event on one axis generated
stop events for the other.

This fixes scrolling with a touchpad in Alacritty.

Anvil already does this, comparing against `Some(0.0)`.
2023-12-22 01:28:11 +01:00
Victoria Brekenfeld
a8b401b11d input: Only capture Escape, if a grab is active 2023-12-13 16:36:49 +00:00
Ian Douglas Scott
53de98a068 Fix build with debug feature 2023-12-13 00:08:30 +01:00
Ian Douglas Scott
f70d33d3cb Update Smithay; high-res scroll 2023-12-12 22:09:56 +01:00
Victoria Brekenfeld
2e08bde657 input: Allow Escape to cancel grabs 2023-12-12 18:39:41 +01:00
Victoria Brekenfeld
8c4d77e43c shell: Add window menu 2023-12-12 18:39:41 +01:00
Victoria Brekenfeld
0147c328f9 workspace: Add toggle_stacking/toggle_stacking_focused 2023-12-12 18:39:41 +01:00
Victoria Brekenfeld
677f686afd workspace: Add explicit toogle_floating_window_focused
`toggle_floating_window` -> `toggle_floating_window_focused`
and added `toggle_floating_window` to deal with explicitly provided
`CosmicMapped`.
2023-12-12 18:39:41 +01:00
Victoria Brekenfeld
ea14033d06 input: Fix stack overflow due to shortcut priorities 2023-11-23 12:57:42 +01:00
Victoria Brekenfeld
c09a735289 state: Move Xwayland state into shell 2023-11-23 12:57:42 +01:00
Victoria Brekenfeld
3dee249558 shell: Add keybindings to migrate workspaces 2023-11-21 13:09:38 +01:00
Victoria Brekenfeld
18a8692517 input: Displays take precendence over workspaces 2023-11-20 16:51:15 +01:00
Victoria Brekenfeld
59581f717f input: Take into account output layout 2023-11-20 16:51:15 +01:00
Ian Douglas Scott
440cd03371 Handle session lock surfaces in visible_outputs_for_surface
Fixes issue with re-draw not being queued on initial surface commit
until cursor is moved.
2023-11-15 13:41:19 +01:00
Victoria Brekenfeld
f7cc1985e3 xdg-activation: Initial implementation 2023-11-09 13:48:34 +01:00
Ian Douglas Scott
7e74d8db0b Fix build with debug feature 2023-10-31 09:01:08 -07: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
f0277eabae Add ext-session-lock protocol 2023-10-27 09:01:25 -07:00
Victoria Brekenfeld
d6434d322e floating: Limit resizing to current output 2023-10-25 19:41:55 +02:00
Ashley Wulber
abbe94e6e1 feat: theme integration
refactor: only apply updates if there is a change in the theme

refactor: include theme in state

cleanup: theme integration
2023-10-25 19:41:55 +02:00
Victoria Brekenfeld
69563420fb shell: Rework maximize/fullscreen 2023-10-25 19:41:55 +02:00
Victoria Brekenfeld
72df9d07e6 shell: One workspace per output 2023-10-25 19:41:55 +02:00
Victoria Brekenfeld
42aaafe586 utils: New geometry spaces local/global 2023-10-25 19:41:55 +02:00
Ian Douglas Scott
111eb4edf4 Update smithay, with cursor/selection changes
We'll probably want to add support for `cursor-shape-v1`. Not sure about
`wlr-data-control-unstable-v1`. But this just updates to work with the
latest smithay commit for new.
2023-10-10 13:32:41 -07:00
Victoria Brekenfeld
4e12957169 chore: Update deps 2023-10-02 21:51:49 +02:00
PixelDots
37fb26a403 Added Modifier-only keybinding support 2023-09-30 08:44:04 -05:00
Ian Douglas Scott
373af07319 Implement pointer constraints; update to send frame manually 2023-09-29 19:21:13 +02:00
Jeremy Soller
aac2c31a38
Fix NextOutput and PreviousOutput when Shell::activate returns None 2023-09-28 13:21:44 -06:00