Commit graph

1354 commits

Author SHA1 Message Date
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
emersion
a4eb90315e
Fix indentation in various files 2019-01-21 17:56:19 +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
97af2464b7 Update Wayland backend to xdg-shell stable 2019-01-10 09:17:14 -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
emersion
ff6c4f80b2
backend/drm: don't insert duplicate custom modes, fix refresh rate 2018-12-16 11:06:46 +01:00
Ryan Walklin
8f5ec5e2bb Fix style nits 2018-12-15 14:57:12 +11: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
cd7a6daf48 Update config struct, reduce complexity and correctly parse config.ini 2018-12-15 14:42:35 +11:00
Ryan Walklin
2a7edfa24c Factor out binding command execution to separate file 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
Drew DeVault
6161a153c8
Merge pull request #1426 from emersion/drm-disappear-index
backend/drm: fix disappeared output indices
2018-12-09 12:54:52 -05:00
emersion
8c573bc7c6
gtk-primary-selection: basic serial validation 2018-12-09 12:38:35 +01:00
Scott Anderson
efdd4d6ea2 backend/drm: Improve encoder logic
This fixes an issue that can occur with DP MST connectors not reporting
any encoders.
2018-12-09 22:48:00 +13:00
Ilia Bozhinov
8cce2d75a9 rootston: add support for wlr_foreign_toplevel_management_v1 2018-12-08 14:09:51 +01:00
Ilia Bozhinov
f387a840d8 rootston: add title/app_id/class listeners 2018-12-08 14:09:30 +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
Louis Taylor
0f3a061f60
rootston: use box for views position 2018-12-05 19:20:50 +00:00
Louis Taylor
d703ae45dd
rootston: use int for width, height 2018-12-05 09:02:49 +00:00
emersion
5515faa197
xdg-shell: emit xdg_surface destroy when role object is destroyed
Fixes https://github.com/swaywm/wlroots/issues/1407
2018-12-04 13:42:29 +01:00