kwin/src/wayland/autotests/client
Martin Gräßlin e0716c2306 [server] Properly send a selection clear prior to keyboard focus enter
Summary:
When setting the keyboard focus the server needs also to send the current
selection to the client. So far KWayland only sent the selection if it was
set. That is if the last focused client cleared the selection it was not
updated and the client might have had an outdated selection.

To prevent this situation the server now explicitly sends the clear to the
client on enter if there is no selection. Also if the selection is cleared,
the SeatInterface now unsets it's current selection to make sure that the
next focused keyboard will get the clear selection sent.

Test Plan:
Existing test case adjusted and a new test case added which
simulates the interaction of two clients.

Reviewers: #plasma_on_wayland

Subscribers: plasma-devel

Tags: #plasma_on_wayland

Differential Revision: https://phabricator.kde.org/D2091
2016-07-13 09:21:01 +02:00
..
CMakeLists.txt [server] Properly send a selection clear prior to keyboard focus enter 2016-07-13 09:21:01 +02:00
test_compositor.cpp
test_datadevice.cpp [server] Add support for setting the clipboard selection DataDeviceInterface manually 2016-06-28 10:48:30 +02:00
test_datasource.cpp
test_drag_drop.cpp
test_error.cpp [autotests] Add test for error case of two PlasmaShellSurfaces for same Surface 2016-06-13 16:26:27 +02:00
test_fake_input.cpp Add support for touch events in fakeinput protocol and interface. 2016-05-31 16:43:54 +05:30
test_idle.cpp
test_plasma_window_model.cpp Introduce an initial state event into Plasma Window protocol 2016-06-06 13:07:35 +02:00
test_plasmashell.cpp Add a ToolTip role to PlasmaShellSurface 2016-06-29 08:01:26 +02:00
test_selection.cpp [server] Properly send a selection clear prior to keyboard focus enter 2016-07-13 09:21:01 +02:00
test_server_side_decoration.cpp [server] Don't destroy ServerSideDecorationInterface when parent SurfaceInterface is destroyed 2016-06-01 07:32:38 +02:00
test_shadow.cpp add .data() to qpointer access 2016-06-30 16:45:29 +02:00
test_shm_pool.cpp
test_text_input.cpp [autotests] Bring SeatInterface::focusedTextInputSurface under coverage 2016-06-28 14:53:45 +02:00
test_wayland_blur.cpp add .data() to qpointer access 2016-06-30 16:45:29 +02:00
test_wayland_connection_thread.cpp
test_wayland_contrast.cpp add .data() to qpointer access 2016-06-30 16:45:29 +02:00
test_wayland_fullscreen_shell.cpp
test_wayland_output.cpp [autotests] Extend test for OutputInterface 2016-06-13 19:19:06 +02:00
test_wayland_outputdevice.cpp [autotest] Further tries on hardening the TestWaylandOutputDevice 2016-05-25 14:03:02 +02:00
test_wayland_outputmanagement.cpp
test_wayland_region.cpp [server] Improve the handling when clients disconnect 2016-05-19 16:21:27 +02:00
test_wayland_registry.cpp Implement wl_text_input and zwp_text_input_v2 interfaces 2016-05-25 15:10:42 +02:00
test_wayland_seat.cpp [server] Properly send a selection clear prior to keyboard focus enter 2016-07-13 09:21:01 +02:00
test_wayland_shell.cpp [server] Unset SurfaceInterface pointer in referenced objects when being destroyed 2016-06-20 10:30:08 +02:00
test_wayland_slide.cpp add .data() to qpointer access 2016-06-30 16:45:29 +02:00
test_wayland_subcompositor.cpp
test_wayland_subsurface.cpp [autotests] Verify the directChildServerSurfaces in TestSubSurface::testSurfaceAt 2016-06-29 11:24:35 +02:00
test_wayland_surface.cpp [server] Ensure that Resource::Private::get returns nullptr if passed a nullptr 2016-06-27 08:21:10 +02:00
test_wayland_windowmanagement.cpp Add a parent_window event to Plasma Window interface 2016-06-29 08:03:55 +02:00