Commit graph

1959 commits

Author SHA1 Message Date
Jens Peters
21cf3071e3 seat: map touch to configured output name
The output name linked to the touch device
has preference when set. This happens when
the compositor runs in nested mode.
2024-01-13 22:18:20 +00:00
Jens Peters
614ce35f31 config: add touch output mapping configuration 2024-01-13 22:18:20 +00:00
bi4k8
9d63c803d3 view: fix crash when a minimized fullscreen window closes
Do not call view methods after invalidating an invariant of the view
(view->scene_tree != NULL)
2024-01-11 20:56:47 +00:00
Johan Malm
e9023f51c6 menu: run actions on button release
...and call actions after closing menus so that virtual keyboard input
caused by actions are sent to the surface with keyboard-focus rather
than being consumed by the open menu.

Fixes: #1366
2024-01-11 20:31:24 +00:00
Jens Peters
17e15ed987 seat: re-map tablet to output on output change 2024-01-10 21:10:11 +00:00
Jens Peters
8de5d7e653 seat: re-map tablet to output on reconfigure 2024-01-10 21:10:11 +00:00
Jens Peters
354c5cf967 seat: map tablet to output on init 2024-01-10 21:10:11 +00:00
Jens Peters
80075df0b7 seat: extract function 2024-01-10 21:10:11 +00:00
Jens Peters
cef2214023 seat: change order
More in line with other functions.
2024-01-10 21:10:11 +00:00
Jens Peters
1df3ada636 config: add tablet output mapping configuration
Also add missing default for 'tablet.rotation'.
2024-01-10 21:10:11 +00:00
Jens Peters
58ee4b7e07 config: change order
More in line with the xml structure.
2024-01-10 21:10:11 +00:00
Johan Malm
67a984e9ae
Merge pull request #1419 from ahesford/bond-james-bond
view, xwayland: fixes for new size constraints
2024-01-09 21:56:45 +00:00
Andrew J. Hesford
6f72f4a368 xwayland: only constrain initial size for unsized clients 2024-01-08 20:13:08 -05:00
Andrew J. Hesford
313a80f6aa view: only constrain sizes for oversized views
...and ensure initial position is on the target display.
2024-01-08 20:12:55 -05:00
Andrew J. Hesford
417fa21a8e rcxml: avoid crash when checking environment for WLR_DRM_NO_ATOMIC 2024-01-08 19:28:03 -05:00
Johan Malm
78418b6dd3 xdg: rename function to align with xwayland.c
s/position_xdg_toplevel_view/set_initial_position/
2024-01-08 22:08:27 +00:00
Johan Malm
c646c7bd1b view: constrain window size to that of usable area
...on first map (when application is started).

Fixes #1399
2024-01-08 22:08:27 +00:00
Ph42oN
bce0c6ce56
Add tearing support (#1390)
Co-authored-by: Andrew J. Hesford <ajh@sideband.org>
2024-01-08 20:58:58 +00:00
Jens Peters
e51c3fc5d4 config: reuse mousebind_button_from_str() 2024-01-06 19:37:41 +00:00
Jens Peters
4c59a8c3d7 config: add more mouse button definitions 2024-01-06 19:37:41 +00:00
Andrew J. Hesford
c229f6edc0 view: try to honor original geometry with layout changes
Whenever the output layout changes, each view's original geometry will
be captured as last_layout_geometry (if it has not already been captured
by a previous layout change), which will remain valid unless the user
modifies the view's geometry (i.e., by tiling, maximizing, moving,
resizing or full-screening). On subsequent output layout changes, views
with valid last_layout_geometry will be back to their original position
if possible, or else to the closest possible output.
2024-01-06 19:04:11 +00:00
Ph42oN
1b5af86402 fix adaptive sync fullscreen 2024-01-06 15:37:18 +00:00
Tomi Ollila
785a34e8ad Fixed some typos 2024-01-04 19:32:51 +00:00
Consolatis
6cf19d1cdb src/theme.c: fix loading of alt_name hover icon
Fixes #1395
2024-01-03 20:07:38 +00:00
Jens Peters
d48126bf97 config: add user names for pad butttons 2024-01-02 21:28:42 +00:00
Jens Peters
c2687d9281 input: add tablet pad setup and button handler
Split pad initialization from tablet initialization to
avoid conflicting handler names.
Also reuse 'get_mapped_button'.
2024-01-02 21:28:42 +00:00
Jens Peters
28e7cd3006 input: add area transformation for tablet coordinates 2024-01-01 22:11:33 +00:00
Jens Peters
f0abd9304f config: add tablet area configuration 2024-01-01 22:11:33 +00:00
Jens Peters
dd91cd89ae input: log tablet dimensions 2024-01-01 22:11:33 +00:00
Johan Malm
af5d80a583 config: s/enum device_type/enum lab_libinput_device_type/ 2024-01-01 22:04:21 +00:00
Johan Malm
673c745cff config: prefix enums with LAB_LIBINPUT_DEVICE_ 2024-01-01 22:04:21 +00:00
Johan Malm
a7f8eef163 seat: refactor obtaining libinput category for device
No functional change intended.
2024-01-01 22:04:21 +00:00
Johan Malm
94cec51d9f config: use wl_list_append() for libinput categories
...to make it more intuitive.

Also, do not check for existance of name when type==DEFAULT because name
will only exist when type==NONE.
2024-01-01 22:04:21 +00:00
Johan Malm
a63f858f58 config: add missing return to save a few cycles 2024-01-01 22:04:21 +00:00
Johan Malm
84fcb99884 config: allow <libinput><device> without category attribute
...to define a 'default' profile because that is likely to be more
user-friendly.
2024-01-01 22:04:21 +00:00
Johan Malm
5337eda242 config: remove duplication in libinput-category parsing
Related-to: #1382
2024-01-01 22:04:21 +00:00
Andrew J. Hesford
b1c5e95c05 view: honor automatic placement when adjusting floating geometry
The view_adjust_floating_geometry function is called when un-maximizing
a window or changing the output layout to ensure that views are well
placed. Rather than always centering these views should they fall
offscren, use the automatic placement strategy if so configured.
2023-12-30 16:50:09 +00:00
Ph42oN
08045d7843 config: add adaptive sync fullscreen option 2023-12-30 15:46:35 +00:00
Jens Peters
21234a5763 config: fix signature formatting 2023-12-29 22:32:41 +00:00
Jens Peters
e61e4c4e75 input: add rotate transformation for tablet coordinates
Co-authored-by: Consolatis <35009135+Consolatis@users.noreply.github.com>
2023-12-29 22:32:41 +00:00
Jens Peters
23ecc32562 config: add tablet rotate configuration
Co-authored-by: Consolatis <35009135+Consolatis@users.noreply.github.com>
2023-12-29 22:32:41 +00:00
Jens Peters
20bba35570 input: rename drawing_tablet to tablet 2023-12-29 20:22:46 +00:00
Jens Peters
5a93aa3a78 input: use button mapping from configuration
Co-authored-by: Consolatis <35009135+Consolatis@users.noreply.github.com>
2023-12-29 20:22:46 +00:00
Jens Peters
567b81ea10 config: add tablet button mapping configuration
Co-authored-by: Consolatis <35009135+Consolatis@users.noreply.github.com>
2023-12-29 20:22:46 +00:00
Johan Malm
235e11f6c9 xbm: s/u32/argb32/ function name change 2023-12-29 11:46:16 +01:00
Jared Baur
6faee17d20 Add touchpad device type
It is nice to have finer granularity for device types to allow for
configurations such as using `naturalScroll` on touchpads, but not on
regular pointer devices such as mice.
2023-12-29 08:08:32 +00:00
Andrew J. Hesford
e3cd189769 feat: add "AutoPlace" action
The AutoPlace action will apply placement_find_best() to an active view,
moving it to a position on its output that will minimize overlap with
other views.
2023-12-28 22:09:44 +00:00
Johan Malm
4b6239ee0c osd: refactor to eliminate usage of g_strcmp0()
...to allow inclusion of ./scripts/find-banned in CI

No functional change intended.
2023-12-28 20:41:49 +01:00
Johan Malm
e77dddbc59 keyboard: fix virtual keyboard bug
Do no process virtual keyboard keycodes (just the keysyms).

Reproduce bug by issuing `wlrctl keyboard type xyz` and observe only 'x'
when 'xyz' was expected.

The 'y' and 'z' were matched in match_keybinding() in the keycode section and
returned keybinds for `XF86_AudioLowerVolume` and `XF86_AudioRaiseVolume`
respectively.

Fixes: #1367
2023-12-28 19:00:49 +01:00
Johan Malm
7c59351774 Revert "xdg: Fix visual glitch when resizing xfce4-terminal from left edge"
This reverts commit 31ec8f050c.

Commit c59aeb5 solves this in a different (hopefully more elegant) way.

Related-to: #1370
2023-12-28 10:22:23 +00:00