Ivan Molodetskikh
9e49ceb129
data-control: add primary selection support
...
data-control: separate out a data_offer struct
This is a prerequisite to adding primary selection support.
data-control: separate out data_control_source
This is a prerequisite to adding primary selection support, since that
doesn't use wlr_data_source, but rather wlr_primary_selection_source.
Update the data-control protocol
data-control: add primary selection support
Merge create_offer and create_primary_offer
Extract code into data_control_source_destroy()
Fix pointer style
Move resource neutralization to destructor
Store wl_resource in the data_offer
Extract data_offer destruction into a function
2019-02-10 17:12:05 +01:00
emersion
6c8eaaef2d
Deprecate old protocols
2019-02-09 19:57:10 +01:00
emersion
7defb30781
relative-pointer-v1: time is in usec, not msec
2019-01-30 21:25:42 +01:00
emersion
d6de329d98
seat: don't send motion if pointer hasn't moved
2019-01-30 15:24:17 +01:00
emersion
75371d2c88
Require libdrm >= 2.4.95
2019-01-29 19:33:38 +01:00
Greg V
9fe8e37961
Implement the pointer-gestures-unstable-v1 protocol
...
This protocol relays touchpad gesture events produced by libinput to
supporting clients (e.g. Evince, Eye of GNOME).
2019-01-28 22:06:36 +01:00
emersion
5de26ad8ed
pointer: add a frame event
...
Frame events group logically connected pointer events. It makes sense to make
the backend responsible for sending frame events, since once the events are
split (ie. once the frame events are stripped) it's not easy to figure out
which events belongs to which frame again.
This is also how Weston handles frame events.
Fixes https://github.com/swaywm/wlroots/issues/1468
2019-01-26 11:04:05 +01:00
emersion
a1f9d7ad9e
data-device: keep track of wlr_data_offer in wlr_seat lists
2019-01-24 12:18:41 +01:00
emersion
909b3b16f3
data-device: add wlr_data_offer.type
2019-01-24 12:18:40 +01:00
emersion
0040f7089f
data-device: unexport wlr_seat_client_send_selection
2019-01-24 12:15:18 +01:00
emersion
1150ff13ce
data-device: make sources inert, rename cancel to destroy
2019-01-24 12:12:55 +01:00
emersion
4cb0697e57
data-device, primary-selection: add request_set_selection
...
This makes compositors able to block and/or customize set_selection requests
coming from clients. For instance, it's possible for a compositor to disable
rich selection content (by removing all MIME types except text/plain). This
commit implements the design proposed in [1].
Two new events are added to wlr_seat: request_set_selection and
request_set_primary_selection. Compositors need to listen to these events and
either destroy the source or effectively set the selection.
Fixes https://github.com/swaywm/wlroots/issues/1138
[1]: https://github.com/swaywm/wlroots/issues/1367#issuecomment-442403454
2019-01-24 11:38:23 +01:00
emersion
06467d2e12
primary-selection: add a serial argument
...
The serial needs to be bumped when X11 clients set the selection, otherwise
some Wayland clients (e.g. GTK) will overwrite it when they gain focus.
2019-01-21 19:23:40 +01:00
Jente Hidskes
edf0e49195
Add wlr_x11_output_set_title
2019-01-20 16:21:04 +01:00
Jente Hidskes
5b07e20f2a
wlr/backend/x11.h: add documentation
...
Copied from wlr/backend/wayland.h and modified accordingly.
2019-01-20 16:14:43 +01:00
Drew DeVault
d4de2bd708
Merge pull request #1476 from emersion/fullscreen-shell
...
fullscreen-shell-v1: initial protocol implementation
2019-01-20 09:30:52 -05:00
Ryan Dwyer
53b29e5443
Add noop.h to include/wlr/backend/meson.build
2019-01-19 21:31:24 +10:00
Ryan Dwyer
9b4be5a595
Introduce noop backend
...
The noop backend is similar to headless, but it doesn't contain a
renderer. It can be used as a place to stash views for when there's no
physical outputs connected.
2019-01-17 20:13:55 +10:00
Connor E
e7fff4f560
Remove wlr_xdg_surface_send_close.
2019-01-13 14:22:49 +00:00
Drew DeVault
d3d1437bc4
Add wlr_wl_output_set_title
2019-01-10 21:53:32 -05:00
Drew DeVault
e61ea7706b
Merge pull request #1423 from emersion/data-control
...
Implement data-control-unstable-v1
2019-01-06 22:41:35 -05:00
emersion
f71cf15aad
relative-pointer-v1: move pointer iteration in wlroots
...
This makes sure we always send events to the right client.
2019-01-06 12:17:31 +01:00
emersion
86f263a0b8
fullscreen-shell-v1: initial protocol implementation
2019-01-06 12:12:06 +01:00
emersion
610f5bfc77
Merge pull request #1432 from ForTheReallys/relative-pointers
...
Relative pointers
2019-01-04 13:42:53 +01:00
Alex Maese
8b97c20d01
Finish addressing @emersion's comments
2019-01-02 11:46:13 -06:00
emersion
69e7fd61b7
data-control-v1: update to latest protocol proposal
2018-12-30 02:52:03 +01:00
emersion
99d879c887
data-control-v1: initial protocol implementation
2018-12-30 02:48:03 +01:00
Jente Hidskes
ed5296c6cf
Protect against redefining MESA_EGL_NO_X11_HEADERS
2018-12-22 19:05:19 +01:00
Timidger
9af0c5338f
Standardize the wlr_box input paramaters
...
Fixes #1094
2018-12-21 13:56:10 -05:00
Alex Maese
5999d0322b
Add a listener for when the pointer gets destroyed
2018-12-21 12:20:48 -06:00
Alex Maese
12d9edc0c9
Address more of @emersion's comments
2018-12-21 12:20:48 -06:00
Alex Maese
e276d310e8
Add unaccelerated pointer values to wlr_event_pointer_motion events
2018-12-21 12:20:48 -06:00
Alex Maese
a803a007fb
Address @emersion's comments
2018-12-21 12:20:48 -06:00
Alex Maese
f5ea393bca
Remove pointer resource from relative pointer
2018-12-21 12:20:48 -06:00
Alex Maese
09bdbf24f4
Removed relative pointers from wlr_seat
2018-12-21 12:20:48 -06:00
Alex Maese
f4cf3c0886
Remove wl_client from wlr_relative_pointer_v1
2018-12-21 12:20:48 -06:00
Alex Maese
a2964a640b
Add wlr_relative_pointer_v1.h to meson.build
2018-12-21 12:20:48 -06:00
random human
68137dca3f
relative_pointer: implementation and code fixes
...
In particular, modified public creator and destructor function names,
added a display destroy listener, safely extract user data from
resources, send correct time (in usecs) in rootston, etc.
2018-12-21 12:20:48 -06:00
random human
fb44ce9fa8
relative_pointer: send frame event to pointer for Xwayland
2018-12-21 12:20:48 -06:00
random human
6fa1777f94
relative_pointer: code formatting fixes
2018-12-21 12:20:48 -06:00
random human
d020344675
relative_pointer: implement protocol events
...
Implement zwp_relative_pointer_v1.relative_motion event, along with some
glue code in wlr_seat_pointer and rootston.
2018-12-21 12:20:48 -06:00
random human
ba5b1676df
relative_pointer: implement protocol requests
...
Flesh out the details of the structs, signals, callback functions, and
so on. weston-resizer silently works at this point (no events sent).
2018-12-21 12:20:48 -06:00
random human
3a3d1b6617
relative_pointer: create skeleton and build
...
Add protocol, header and type files to build. Create skeleton structs,
creator and destroyer, and define implementations.
2018-12-21 12:20:47 -06:00
Ryan Walklin
810c7b700c
Working switches in rootston:
...
Factor out switch handling to separate file
Add formal enum for toggle action
Implement binding actions
2018-12-15 14:42:35 +11:00
Ryan Walklin
2a3c62b4d2
[WIP][DONTMERGE]Add support for libinput_switch input devices
...
These are used primarily by laptops to signal
the state of the lid (open/closed) and tablet
mode if supported, based on ACPI events.
2018-12-15 14:42:35 +11:00
emersion
8c573bc7c6
gtk-primary-selection: basic serial validation
2018-12-09 12:38:35 +01:00
Ilia Bozhinov
5b1b9657bf
types: implement wlr_foreign_toplevel_management_v1
2018-12-08 14:09:30 +01:00
emersion
1256314afe
export-dmabuf-v1: add missing destroy request handler
...
Also document lists in the header file.
2018-12-06 19:08:28 +01:00
Duncaen
e584857fa9
Install wlr_pointer_constraints_v1.h
2018-12-03 18:44:16 +01:00
Drew DeVault
273e110b74
Merge pull request #1403 from emersion/swap-buffers-damage-coords
...
output: switch swap_buffers damage to output-buffer-local coords
2018-12-02 13:17:24 -05:00