You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Manuel Stoeckl
edb30a6828
Implement serial validation for selection requests
...
This change tracks, for each wlr_seat_client, the most recent serial
numbers which were sent to the client. When the client makes a
selection request, wlroots now verifies that the serial number
associated with the selection request was actually provided to that
specific client. This ensures that the client that was most
recently interacted with always has priority for its copy selection
requests, and that no other clients can incorrectly use a larger serial
value and "steal" the role of having the copy selection.
Also, the code used to determine when a given selection is superseded
by a newer request uses < instead of <= to allow clients to make
multiple selection requests with the same serial number and have the
last one hold.
To limit memory use, a ring buffer is used to store runs of sequential
serial numbers, and all serial numbers earlier than the start of the
ring buffer are assumed to be valid. Faking very old serials is
unlikely to be disruptive.
Assuming all clients are correctly written, the only additional
constraint which this patch should impose is that serial numbers
are now bound to seats: clients may not receive a serial number
from an input event on one seat and then use that to request
copy-selection on another seat.
5 years ago
..
meson.build
Remove orbital screenshooter and gamma-control
6 years ago
wlr_box.h
Standardize the wlr_box input paramaters
6 years ago
wlr_buffer.h
buffer: add wlr_buffer_get_dmabuf
6 years ago
wlr_compositor.h
surface: fix destroyed subsurfaces handling
6 years ago
wlr_cursor.h
Unbreak build with '-Wstrict-prototypes'
6 years ago
wlr_data_control_v1.h
data-control: add primary selection support
6 years ago
wlr_data_device.h
Implement serial validation for selection requests
5 years ago
wlr_export_dmabuf_v1.h
output: rename swap_buffers event to precommit
6 years ago
wlr_foreign_toplevel_management_v1.h
foreign-toplevel: support fullscreen state and request
6 years ago
wlr_fullscreen_shell_v1.h
fullscreen-shell-v1: initial protocol implementation
6 years ago
wlr_gamma_control_v1.h
Add destroy signals to types that are destroyed by wl_display_destroy
6 years ago
wlr_gtk_primary_selection.h
Deprecate old protocols
6 years ago
wlr_idle.h
idle: enable the compositors to add custom idle timeouts ( #1655 )
6 years ago
wlr_idle_inhibit_v1.h
Add destroy signals to types that are destroyed by wl_display_destroy
6 years ago
wlr_input_device.h
s/lid_switch/switch_device
6 years ago
wlr_input_inhibitor.h
Add destroy signals to types that are destroyed by wl_display_destroy
6 years ago
wlr_input_method_v2.h
input-method-v2: fix include guard name
6 years ago
wlr_keyboard.h
Send unique keymap file descriptors
6 years ago
wlr_layer_shell_v1.h
layer-shell: add _v1 suffix
6 years ago
wlr_linux_dmabuf_v1.h
Initial pass on API stability guarantees
6 years ago
wlr_list.h
Initial pass on API stability guarantees
6 years ago
wlr_matrix.h
Initial pass on API stability guarantees
6 years ago
wlr_output.h
output: introduce wlr_output_lock_attach_render
6 years ago
wlr_output_damage.h
output: disambiguate the two types of damage
6 years ago
wlr_output_layout.h
Unbreak build with '-Wstrict-prototypes'
6 years ago
wlr_output_management_v1.h
output-management-v1: add more docs
6 years ago
wlr_pointer.h
Implement the pointer-gestures-unstable-v1 protocol
6 years ago
wlr_pointer_constraints_v1.h
pointer-constraints: add unstable header
6 years ago
wlr_pointer_gestures_v1.h
Implement the pointer-gestures-unstable-v1 protocol
6 years ago
wlr_presentation_time.h
Rename get_present_clock to get_presentation clock, use it
6 years ago
wlr_primary_selection.h
Implement serial validation for selection requests
5 years ago
wlr_primary_selection_v1.h
primary-selection-v1: copy from gtk-primary-selection
6 years ago
wlr_region.h
Implement pointer-constraints protocol in wlroots and rootston
6 years ago
wlr_relative_pointer_v1.h
relative-pointer-v1: time is in usec, not msec
6 years ago
wlr_screencopy_v1.h
output: rename swap_buffers event to precommit
6 years ago
wlr_seat.h
Implement serial validation for selection requests
5 years ago
wlr_server_decoration.h
Deprecate old protocols
6 years ago
wlr_surface.h
subsurface: add map/unmap events
6 years ago
wlr_switch.h
Working switches in rootston:
6 years ago
wlr_tablet_pad.h
Initial pass on API stability guarantees
6 years ago
wlr_tablet_tool.h
Initial pass on API stability guarantees
6 years ago
wlr_tablet_v2.h
Merge pull request #1160 from Ongy/tablet-grabs
6 years ago
wlr_text_input_v3.h
wlroots: add support for zwp_text_input_unstable_v3
6 years ago
wlr_touch.h
Initial pass on API stability guarantees
6 years ago
wlr_virtual_keyboard_v1.h
virtual_keyboard: Require keymap before accepting keycodes
6 years ago
wlr_xcursor_manager.h
Initial pass on API stability guarantees
6 years ago
wlr_xdg_decoration_v1.h
Add destroy signals to types that are destroyed by wl_display_destroy
6 years ago
wlr_xdg_output_v1.h
xdg-output: add _v1 suffix
6 years ago
wlr_xdg_shell.h
wlr_xdg_toplevel: store pending fullscreen output
6 years ago
wlr_xdg_shell_v6.h
wlr_xdg_toplevel_v6: store pending fullscreen output
6 years ago