emersion
1150ff13ce
data-device: make sources inert, rename cancel to destroy
6 years ago
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
6 years ago
Ian Fan
c41d01306d
wlr_xdg_output_v1: move where name & description are sent
6 years ago
Brian Ashworth
f3ff40a0eb
wlr_xdg_output_v1: only send name/description once
...
The xdg-output protocol states that name and description should only be
sent once per output since they do not change.
6 years ago
emersion
365a75139c
Merge pull request #1485 from emersion/data-device-serial
...
primary-selection: add a serial argument
6 years ago
Ilya Trukhanov
c4ce3d0a49
Check if client understands wl_pointer::frame
...
Fixes a crash in SDL2 applications when using locked pointer.
SDL2 expects a wl_pointer v1 interface and doesn't provide a handler for
the wl_pointer::frame event. This results in a "listener function for
opcode 5 of wl_pointer is NULL" abort in wayland-client.
Tested on Xonotic v0.8.2 with libSDL2 v2.0.9. Xonotic needs to be ran
with "SDL_VIDEODRIVER=wayland xonotic-sdl" for SDL2 to use the wayland
backend.
6 years ago
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.
6 years ago
emersion
a4eb90315e
Fix indentation in various files
6 years ago
Drew DeVault
d4de2bd708
Merge pull request #1476 from emersion/fullscreen-shell
...
fullscreen-shell-v1: initial protocol implementation
6 years ago
Drew DeVault
0db2a687b7
Merge pull request #1479 from emersion/lost-crtc-state
...
backend/drm: fix state for outputs loosing their CRTC
6 years ago
emersion
d4ffa5b7a6
backend/drm: fix state for outputs loosing their CRTC
...
When there aren't enough CRTCs for all outputs, we try to move a CRTC from a
disabled output to an enabled one. When this happens, the old output's state
wasn't changed, so the compositor thought it was still enabled and rendering.
This commit marks the old output as WLR_DRM_CONN_NEEDS_MODESET and sets its
current mode to NULL.
6 years ago
Ilya Trukhanov
268cc450b6
Fix segfault in get_relative_pointer
...
Occurs on subsequent calls to
relative_pointer_manager_v1_handle_get_relative_pointer()
Steps to reproduce:
- run rootston
- run examples/relative-pointer
- switch to relative pointer more than once
Note: if done fast enough it may take more than two switches to crash.
6 years ago
Connor E
b1cdd2b4b3
Use assertions instead of guard.
6 years ago
Connor E
e7fff4f560
Remove wlr_xdg_surface_send_close.
6 years ago
emersion
0fafab87e3
Fix a few typos
6 years ago
Drew DeVault
e61ea7706b
Merge pull request #1423 from emersion/data-control
...
Implement data-control-unstable-v1
6 years ago
emersion
f71cf15aad
relative-pointer-v1: move pointer iteration in wlroots
...
This makes sure we always send events to the right client.
6 years ago
emersion
86f263a0b8
fullscreen-shell-v1: initial protocol implementation
6 years ago
emersion
610f5bfc77
Merge pull request #1432 from ForTheReallys/relative-pointers
...
Relative pointers
6 years ago
emersion
69e7fd61b7
data-control-v1: update to latest protocol proposal
6 years ago
emersion
340281b48a
data-control-v1: fix data source not properly destroyed
6 years ago
emersion
a28167c255
data-control-v1: allow clearing selection
6 years ago
emersion
ae1dd635b1
data-device: fix dangling listener in seat_client_selection_source_destroy
6 years ago
emersion
aa2dafb7c8
data-control-v1: fix crash in manager_handle_get_data_control
6 years ago
emersion
1e581ad95c
data-control-v1: fix crash after wlr_data_control_v1_destroy
6 years ago
emersion
99d879c887
data-control-v1: initial protocol implementation
6 years ago
Alex Maese
b8460f448c
Rename some variables for clarity
6 years ago
Timidger
9af0c5338f
Standardize the wlr_box input paramaters
...
Fixes #1094
6 years ago
Alex Maese
5999d0322b
Add a listener for when the pointer gets destroyed
6 years ago
Alex Maese
12d9edc0c9
Address more of @emersion's comments
6 years ago
Alex Maese
a803a007fb
Address @emersion's comments
6 years ago
Alex Maese
f5ea393bca
Remove pointer resource from relative pointer
6 years ago
Alex Maese
09bdbf24f4
Removed relative pointers from wlr_seat
6 years ago
Alex Maese
f4cf3c0886
Remove wl_client from wlr_relative_pointer_v1
6 years ago
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.
6 years ago
random human
fb44ce9fa8
relative_pointer: send frame event to pointer for Xwayland
6 years ago
random human
6fa1777f94
relative_pointer: code formatting fixes
6 years ago
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.
6 years ago
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).
6 years ago
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.
6 years ago
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.
6 years ago
Drew DeVault
ef9506b0bc
Merge pull request #1433 from ammen99/fix-layer-shell-unconstrain
...
xdg-popup: fix wlr_xdg_popup_get_toplevel_coords()
6 years ago
Ilia Bozhinov
07865104e1
xdg-popup: fix wlr_xdg_popup_get_toplevel_coords()
...
The previous code resulted in a crash when we try to unconstrain a popup
which is part of a layer-shell surface popup tree.
Fixes #1425
6 years ago
emersion
c2113decb3
gtk-primary-selection: warn when offering MIME type after set_selection
6 years ago
emersion
8c573bc7c6
gtk-primary-selection: basic serial validation
6 years ago
Ilia Bozhinov
5b1b9657bf
types: implement wlr_foreign_toplevel_management_v1
6 years ago
emersion
1256314afe
export-dmabuf-v1: add missing destroy request handler
...
Also document lists in the header file.
6 years ago
Drew DeVault
fdb67ff63b
Merge pull request #1415 from emersion/tablet-seat-leak
...
tablet-v2: fix wlr_tablet_seat_v2 leak
6 years ago
emersion
3ca7ca5306
tablet-v2: fix wlr_tablet_seat_v2 leak
6 years ago
emersion
5515faa197
xdg-shell: emit xdg_surface destroy when role object is destroyed
...
Fixes https://github.com/swaywm/wlroots/issues/1407
6 years ago