1
0
Fork 0
forked from wry/wry
Commit graph

106 commits

Author SHA1 Message Date
Julian Orth
ee24971c6d wayland: implement pointer-gestures-unstable-v1 2024-04-27 17:56:14 +02:00
Julian Orth
a12065a915 config: make focus-follows-mouse optional 2024-04-27 11:19:42 +02:00
Julian Orth
fa3d870935 tree: access outputs via root node 2024-04-26 15:45:16 +02:00
Julian Orth
25f363d086 wayland: implement ext-transient-seat-v1 2024-04-24 14:05:33 +02:00
Julian Orth
33a0a40857 portal: implement workspace capture 2024-04-20 13:49:46 +02:00
Julian Orth
17a0dfed5e seat: add framework to select toplevels 2024-04-18 17:12:11 +02:00
Julian Orth
90dbde99ab config: add support for mod masks in shortcuts 2024-04-16 18:58:35 +02:00
Julian Orth
18bc86d14f config: allow consuming/forwarding key events 2024-04-15 18:42:59 +02:00
Julian Orth
daf52299db seat: implement input methods 2024-04-15 15:34:00 +02:00
Julian Orth
5e2cdef388 seat: add KeyboardState and dynamically switch between states 2024-04-14 13:16:18 +02:00
Julian Orth
6c0e3a4fff wayland: implement virtual-keyboard 2024-04-12 19:59:30 +02:00
Julian Orth
826f40adca seat: implement per-device keymaps 2024-04-12 17:06:16 +02:00
Julian Orth
225995eb2f seat: after keymap change, only send keymap to focused surface 2024-04-12 14:56:54 +02:00
Julian Orth
8d43eebc3d seat: store pressed keys in a vector 2024-04-12 14:50:57 +02:00
Julian Orth
acb391335b wire: generate trait for request handling 2024-04-08 20:02:29 +02:00
Julian Orth
e3a1a0b30f wayland: make object versions type safe 2024-04-08 14:47:50 +02:00
Julian Orth
6448a14fb1 it: test cursor-shape protocol 2024-04-03 17:12:28 +02:00
Julian Orth
99be020c19 wayland: implement wlr-data-control 2024-03-31 20:36:15 +02:00
Julian Orth
8bca8b0e86 ipc: create separate offers/sources for X 2024-03-31 20:24:16 +02:00
Julian Orth
4e9dacce1a ipc: use trait objects for source/offer 2024-03-31 14:59:31 +02:00
Julian Orth
7cbe5720c6 ipc: make source/offer ids type safe 2024-03-30 20:51:25 +01:00
Julian Orth
ba98103233 tree: make surface visibility tracking more robust 2024-03-29 21:17:45 +01:00
Julian Orth
be0935c8dd seat: handle surface cursor lifetimes explicitly 2024-03-29 19:31:40 +01:00
Julian Orth
816315170f render: add support for explicit sync 2024-03-27 18:15:53 +01:00
Julian Orth
1b4492c670 render: propagate errors 2024-03-27 18:15:53 +01:00
Julian Orth
3eb0f61ec1 tree: make scale and position of outputs persistent 2024-03-16 01:38:57 +01:00
Julian Orth
efae1cd16a cli: add an input subcommand 2024-03-12 17:43:26 +01:00
Julian Orth
7381e5df37 cursor: respect XCURSOR_SIZE 2024-03-10 17:42:06 +01:00
Julian Orth
d425768760 tree: support toggling floating with double clicks 2024-03-03 14:18:46 +01:00
Julian Orth
364872258a wayland: implement xdg-toplevel-drag 2024-03-03 01:48:24 +01:00
Julian Orth
54d93f84da all: add (Clone)Cell::is_some and is_none 2024-03-02 18:09:40 +01:00
Julian Orth
b7d2964e19 all: implement output transforms 2024-02-28 20:11:40 +01:00
Julian Orth
ed129c1c3d tree: damage screen when parent is focused 2024-02-22 14:10:03 +01:00
Julian Orth
0ab9ec3b75 tree: don't attach container node to parent during construction 2024-02-21 19:39:33 +01:00
Julian Orth
7f37e107af tree: disallow moving focus to non-toplevel parent 2024-02-21 19:39:33 +01:00
Julian Orth
062bcb25ee tree: fix toplevel float extent memoization 2024-02-19 22:58:58 +01:00
Julian Orth
d4fc672fb3 tree: move output scale to global 2024-02-16 19:15:03 +01:00
Julian Orth
9a024fe72c wayland: implement ext-idle-notifier 2024-02-15 22:47:34 +01:00
Julian Orth
3acf0558a3 wayland: implement wp_cursor_shap_manager_v1 2024-02-08 14:13:18 +01:00
Julian Orth
71fc851705 render: keep track of outputs whose hardware cursor must be rendered 2024-02-07 21:43:01 +01:00
Julian Orth
0ac1bb8507 wayland: remove Object::num_requests 2024-02-06 12:05:03 +01:00
Julian Orth
78b557b4a1 input: implement wl_seat version 9 2024-02-04 19:56:45 +01:00
Julian Orth
a2a04512ed all: address clippy lints 2023-10-22 16:01:40 +02:00
Julian Orth
2db0ee8995 seat: update hardware cursor upon identical re-attach
This happens if the client re-uses the same wl_surface in
wl_pointer::set_cursor. If, in the same call, the client changes the
hotspot, we have to re-render the hardware cursor.
2022-12-16 22:06:56 +01:00
Julian Orth
0fe59effe2 seat: ignore duplicate set_selection request
This works around [1] and [2].

[1]: https://gitlab.gnome.org/GNOME/gtk/-/issues/5097
[2]: https://github.com/mahkoh/jay/issues/47
2022-08-13 12:57:45 +02:00
Julian Orth
a162055f1d portal: add a desktop portal 2022-07-31 11:25:57 +02:00
Julian Orth
b3c20c5309 wayland: add jay_pointer 2022-07-30 12:03:55 +02:00
Julian Orth
38d1267ec9 tree: implement pointer constraints 2022-07-21 20:16:22 +02:00
Julian Orth
3b8935cf55 all: implement hardware cursors 2022-06-01 21:46:31 +02:00
Julian Orth
e52a60b3b6 wayland: implement scaling
This involves many subsystems:

- config:
    - allow setting the connector scale
    - allow setting the cursor size
- cursors:
    - load server cursors for all requested sizes and scales
- wl_surface:
    - track the output the surface belongs to
    - send wl_surface.enter/leave
- wl_output:
    - implement wl_output.scale
- text:
    - pre-render texts for all used scales
- renderer:
    - properly align scale textures and rectangles
- wp_fractional_scale:
    - new interface for fractional scaling
2022-05-30 17:00:25 +02:00