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
Andrew J. Hesford
c59aeb5673
xdg: sync pending when applying geometry
...
Applications may respond to pending resize requests either by ignoring
them or substituting alternative sizes (for example, when mpv constrains
resizes to keep its aspect ratio fixed). In these cases, view->pending
will fall out of sync with the actual view geometry. This will cause
problems when subsequent operations (e.g., MoveToEdge) use the pending
geometry to decide where to place the window.
To fix this, reset view->pending to be equal view->current when either:
1. The requested size change has been commited, to the scene graph, and
no subsequent changes are pending; or
2. The requested size change has been ignored by the client.
2023-12-28 10:13:52 +00:00
Jens Peters
605f9e9181
seat: initialize tablet tool or pad
...
Co-authored-by: Consolatis <35009135+Consolatis@users.noreply.github.com>
2023-12-27 11:09:26 +00:00
Jens Peters
2b96799a05
input: add drawing tablet setup and event listeners
...
Co-authored-by: Consolatis <35009135+Consolatis@users.noreply.github.com>
2023-12-27 11:09:26 +00:00
Jens Peters
58e9724007
input: add cursor move and button emulation
...
Co-authored-by: Consolatis <35009135+Consolatis@users.noreply.github.com>
2023-12-27 11:09:26 +00:00
kyak
d2d469133f
osd: support full app_id in window switcher ( #1309 )
...
Support showing full application
identifier or the trimmed variant in window switcher OSD.
Regression notice: For anyone using ‘identifier’ in window-switcher field configuration, change it to ‘trimmed_identifier’.
2023-12-27 10:55:49 +00:00
Andrew J. Hesford
52aafcc054
feat: automatic window placement
...
With automatic placement, new top-level windows will be placed to
minimize overlap with other windows already on screen.
2023-12-26 19:20:06 +00:00
Andrew J. Hesford
ef62d47ad1
feat: under-cursor window placement
...
With under-cursor placement, new top-level windows will be centered
under the cursor rather than centered on the active view.
2023-12-26 19:20:06 +00:00
kyak
266690091f
Remove headers not being used directly
...
Fix clangd warnings regarding headers not being used directly.
2023-12-22 20:19:39 +00:00
Jens Peters
44c79c4963
xwayland: Prevents usage of invalid data pointer
...
There are situations where the data pointer of a parent is NULL.
Checking for NULL first fixes e.g. a segmentation fault in CLion
when opening the settings window from a popup menu.
See also https://github.com/labwc/labwc/issues/1351#issuecomment-1867475324
2023-12-22 11:24:49 +01:00