wlroots/types
Guido Günther df3f0ffbb0 wlr_seat_touch: Don't destroy touch point with surface
When the surface is destroyed clear it's reference but wait for the up
event to destroy the touch point via wlr_seat_touch_notify_up().

If the surface is destroyed before the up event we end up with
incomplete sequences sent to the client like

[915821.276] wl_touch@3.down(146, 2475027, wl_surface@38, 0, 236.000000, 515.000000)
[915821.608] wl_touch@3.frame()
[915821.637] wl_touch@3.motion(2475027, 0, 236.000000, 515.000000)
[915821.779] wl_touch@3.frame()

so there's never an up event. While it should be something like

[2461229.051] wl_touch@3.down(81, 3236959, wl_surface@34, 0, 218.000000, 478.000000)
[2461229.435] wl_touch@3.frame()
[2461229.484] wl_touch@3.motion(3236959, 0, 218.000000, 478.000000)
[2461229.636] wl_touch@3.frame()
[2461277.520] wl_touch@3.up(82, 3237007, 0)
[2461277.681] wl_touch@3.frame()

this confuses toolkits intepreting the next down event incorrectly. So
don't destroy the touch point too early.
2019-07-04 14:45:58 +03:00
..
data_device wlr_seat: Fix edge cases with serial validation 2019-06-30 15:01:05 -04:00
seat wlr_seat_touch: Don't destroy touch point with surface 2019-07-04 14:45:58 +03:00
tablet_v2 wlr_tablet_v2: Register event serials 2019-06-30 15:01:05 -04:00
xdg_shell wlr_xdg_toplevel: store pending fullscreen output 2019-03-27 10:04:10 +02:00
xdg_shell_v6 wlr_xdg_toplevel_v6: store pending fullscreen output 2019-03-27 10:04:10 +02:00
meson.build Remove orbital screenshooter and gamma-control 2019-06-02 09:30:47 -04:00
wlr_box.c Standardize the wlr_box input paramaters 2018-12-21 13:56:10 -05:00
wlr_buffer.c buffer: add wlr_buffer_get_dmabuf 2019-06-07 09:06:11 -04:00
wlr_compositor.c Merge pull request #1116 from emersion/surface-role 2018-07-11 15:27:42 -07:00
wlr_cursor.c Implement the pointer-gestures-unstable-v1 protocol 2019-01-28 22:06:36 +01:00
wlr_data_control_v1.c Implement serial validation for selection requests 2019-06-30 15:01:05 -04:00
wlr_export_dmabuf_v1.c output: introduce wlr_output_lock_attach_render 2019-06-07 09:06:11 -04:00
wlr_foreign_toplevel_management_v1.c foreign-toplevel: support fullscreen state and request 2019-04-29 00:00:53 +03:00
wlr_fullscreen_shell_v1.c fullscreen-shell-v1: initial protocol implementation 2019-01-06 12:12:06 +01:00
wlr_gamma_control_v1.c gamma-control-v1: add missing destroy handler 2018-09-29 14:30:41 +02:00
wlr_gtk_primary_selection.c Implement serial validation for selection requests 2019-06-30 15:01:05 -04:00
wlr_idle.c idle: enable the compositors to add custom idle timeouts (#1655) 2019-04-17 08:48:43 +03:00
wlr_idle_inhibit_v1.c Init the new destroy signals added by #1200 2018-08-27 18:21:36 +02:00
wlr_input_device.c s/lid_switch/switch_device 2019-03-19 22:45:58 -04:00
wlr_input_inhibitor.c Init the new destroy signals added by #1200 2018-08-27 18:21:36 +02:00
wlr_input_method_v2.c input-method-v2: initialize destroy signal 2018-10-28 12:23:47 +01:00
wlr_keyboard.c Use a set to track pointer button state. 2019-06-16 00:59:53 +03:00
wlr_layer_shell_v1.c layer-shell: add _v1 suffix 2018-09-14 19:32:33 +02:00
wlr_linux_dmabuf_v1.c render: switch wlr_renderer to wlr_drm_format_set 2019-04-01 19:18:04 +03:00
wlr_list.c Revert "ELF Visibility" 2018-02-19 18:01:27 -05:00
wlr_matrix.c Fix typos in comments and strings 2018-05-03 21:59:43 +01:00
wlr_output.c output: remove wlr_output_impl.transform 2019-06-16 10:51:49 -04:00
wlr_output_damage.c output-damage: set needs swap only when we have new damage 2019-06-27 21:49:19 +03:00
wlr_output_layout.c output: remove lx, ly 2019-04-13 08:31:30 -06:00
wlr_output_management_v1.c output: remove lx, ly 2019-04-13 08:31:30 -06:00
wlr_pointer.c Implement the pointer-gestures-unstable-v1 protocol 2019-01-28 22:06:36 +01:00
wlr_pointer_constraints_v1.c pointer-constraints: use proper wayland-scanner functions 2018-09-27 10:53:11 +02:00
wlr_pointer_gestures_v1.c wlr_pointer_gestures: Register event serials 2019-06-30 15:01:05 -04:00
wlr_presentation_time.c output: add presentation refresh prediction 2018-10-04 22:00:24 +02:00
wlr_primary_selection.c wlr_seat: Fix edge cases with serial validation 2019-06-30 15:01:05 -04:00
wlr_primary_selection_v1.c Implement serial validation for selection requests 2019-06-30 15:01:05 -04:00
wlr_region.c compositor: redesign how resources are managed 2018-04-26 17:51:06 +01:00
wlr_relative_pointer_v1.c relative-pointer-v1: time is in usec, not msec 2019-01-30 21:25:42 +01:00
wlr_screencopy_v1.c output: introduce wlr_output_lock_attach_render 2019-06-07 09:06:11 -04:00
wlr_server_decoration.c Init the new destroy signals added by #1200 2018-08-27 18:21:36 +02:00
wlr_surface.c subsurface: add map/unmap events 2019-02-17 12:01:15 +01:00
wlr_switch.c s/lid_switch/switch_device 2019-03-19 22:45:58 -04:00
wlr_tablet_pad.c Use wlr_list for paths, and improve inert resource handling 2018-07-14 09:43:17 +02:00
wlr_tablet_tool.c rename wlr_tablet_tool to wlr_tablet 2018-07-14 09:49:58 +02:00
wlr_text_input_v3.c text-input-v3: remove newline in log message 2018-11-26 12:15:34 +01:00
wlr_touch.c Revert "ELF Visibility" 2018-02-19 18:01:27 -05:00
wlr_virtual_keyboard_v1.c virtual_keyboard: Require keymap before accepting keycodes 2019-06-24 17:16:37 +03:00
wlr_xcursor_manager.c Redesign wlr_texture 2018-03-24 23:48:32 -04:00
wlr_xdg_decoration_v1.c Fix a crash on zxdg_decoration_manager_v1 destroy 2018-10-01 14:45:17 +02:00
wlr_xdg_output_v1.c xdg-output: schedule a wl_output.done event on update 2019-04-27 10:02:21 -06:00