kwin/autotests/integration
David Edmundson 2bad2b48fe [wayland] Finish initialising ShellClient only when commited to the surface
Summary:
Everything on the wl_surface is double buffered.

When we create an XdgShell toplevel or popup we shouldn't treat it as
attached until it's committed to the surface.

A client should commit the surface after it's sent it's initial state of
the Xdg topLevel; minimumSize, title, app_id, etc.

By blocking sending configure events we will have flushed the correct
initial state before sending a single atomic correct event to the
client. It also adds a hook to re-evaluate rules now that all properties
are set.

Arguably this applies to WlShellSurface too, but I've left it unchanged
as it's deprecated and hard to verify real client behaviour.

Test Plan: Ran all unit tests

Reviewers: #kwin, zzag

Reviewed By: #kwin, zzag

Subscribers: zzag, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D18583
2019-02-26 13:51:28 +00:00
..
data
effects [wayland] Finish initialising ShellClient only when commited to the surface 2019-02-26 13:51:28 +00:00
fakes [scenes/opengl] Fix overlapping shadow tiles 2018-06-07 12:07:57 +03:00
helper
scripting Fix minor EBN issues 2018-08-29 21:02:16 +03:00
activities_test.cpp Fix the way how we quit kactivitymanagerd from the unit test 2018-11-09 17:27:07 +01:00
buffer_size_change_test.cpp Remove unnecessary flushs in new buffer size change test 2019-02-21 23:42:47 +01:00
CMakeLists.txt [autotests] Sub-surface resize test 2019-02-21 23:33:32 +01:00
colorcorrect_nightcolor_test.cpp [autotests] Stabilise colorcorrect test 2018-11-30 11:37:41 +00:00
dbus_interface_test.cpp Port window specific rules dialog to DBus 2018-12-31 07:58:12 +01:00
debug_console_test.cpp [platforms/virtual] Add virtual output class 2018-03-19 22:12:22 +01:00
decoration_input_test.cpp [autotests] Update tests to use stable version of xdg-shell 2019-01-20 13:52:30 +02:00
desktop_window_x11_test.cpp [platforms/virtual] Add virtual output class 2018-03-19 22:12:22 +01:00
dont_crash_aurorae_destroy_deco.cpp [autotests] Don't check whether there is a /dev/dri/card0 2019-01-12 07:36:28 +01:00
dont_crash_cancel_animation.cpp
dont_crash_cursor_physical_size_empty.cpp [autotests] Update tests to use stable version of xdg-shell 2019-01-20 13:52:30 +02:00
dont_crash_empty_deco.cpp [autotests] Don't check whether there is a /dev/dri/card0 2019-01-12 07:36:28 +01:00
dont_crash_glxgears.cpp
dont_crash_no_border.cpp [autotests] Update tests to use stable version of xdg-shell 2019-01-20 13:52:30 +02:00
dont_crash_reinitialize_compositor.cpp [autotests] Don't check whether there is a /dev/dri/card0 2019-01-12 07:36:28 +01:00
dont_crash_useractions_menu.cpp [platforms/virtual] Add virtual output class 2018-03-19 22:12:22 +01:00
generic_scene_opengl_test.cpp Restrict available supported compositors based on first initialized one 2019-02-22 16:59:08 +01:00
generic_scene_opengl_test.h
globalshortcuts_test.cpp Don't try to filter null key combinations 2018-04-24 16:35:23 +02:00
idle_inhibition_test.cpp [wayland] Don't honor the idle inhibitor object if the surface is not visible 2019-01-11 15:14:16 +02:00
input_stacking_order.cpp [platforms/virtual] Add virtual output class 2018-03-19 22:12:22 +01:00
internal_window.cpp Split out a dedicated InternalClient class 2019-02-21 18:51:25 +01:00
keyboard_layout_test.cpp Fix KeyboardLayoutTest::testNumLock 2018-11-15 19:01:51 +01:00
keymap_creation_failure_test.cpp
kwin_wayland_test.cpp [wayland] Keep application startup flow inside main_wayland 2019-02-23 12:18:09 +00:00
kwin_wayland_test.h [wayland] Finish initialising ShellClient only when commited to the surface 2019-02-26 13:51:28 +00:00
kwinbindings_test.cpp
lockscreen.cpp [autotests] Don't check whether there is a /dev/dri/card0 2019-01-12 07:36:28 +01:00
maximize_test.cpp Drop ShellClient::shellSurface method 2019-02-01 12:54:27 +02:00
modifier_only_shortcut_test.cpp
move_resize_window_test.cpp [autotests] Update tests to use stable version of xdg-shell 2019-01-20 13:52:30 +02:00
no_global_shortcuts_test.cpp Introduce a command line option to disable any kind of global shortcuts 2018-12-13 19:36:28 +01:00
no_xdg_runtime_dir_test.cpp
plasma_surface_test.cpp [autotests] Update tests to use stable version of xdg-shell 2019-01-20 13:52:30 +02:00
plasmawindow_test.cpp [autotests] Don't check whether there is a /dev/dri/card0 2019-01-12 07:36:28 +01:00
platformcursor.cpp
pointer_constraints_test.cpp [autotests] Update tests to use stable version of xdg-shell 2019-01-20 13:52:30 +02:00
pointer_input.cpp [wayland] Don't use hardcoded move-resize cursor 2018-12-31 12:35:01 +02:00
quick_tiling_test.cpp [wayland] Finish initialising ShellClient only when commited to the surface 2019-02-26 13:51:28 +00:00
scene_opengl_es_test.cpp
scene_opengl_shadow_test.cpp [autotests] Don't check whether there is a /dev/dri/card0 2019-01-12 07:36:28 +01:00
scene_opengl_test.cpp
scene_qpainter_shadow_test.cpp compare doubles to doubles 2018-06-14 09:21:07 +01:00
scene_qpainter_test.cpp Restrict available supported compositors based on first initialized one 2019-02-22 16:59:08 +01:00
screen_changes_test.cpp Add XDG Output support 2018-05-18 14:16:13 +01:00
screenedge_client_show_test.cpp [platforms/virtual] Add virtual output class 2018-03-19 22:12:22 +01:00
shade_test.cpp [platforms/virtual] Add virtual output class 2018-03-19 22:12:22 +01:00
shell_client_rules_test.cpp [autotests] Update tests to use stable version of xdg-shell 2019-01-20 13:52:30 +02:00
shell_client_test.cpp [wayland] Finish initialising ShellClient only when commited to the surface 2019-02-26 13:51:28 +00:00
showing_desktop_test.cpp
stacking_order_test.cpp [autotests] Add tests for keep-above and keep-below states 2019-01-01 17:29:14 +02:00
start_test.cpp Introduce a command line option to disable any kind of global shortcuts 2018-12-13 19:36:28 +01:00
struts_test.cpp [platforms/virtual] Add virtual output class 2018-03-19 22:12:22 +01:00
tabbox_test.cpp
test_helpers.cpp [wayland] Finish initialising ShellClient only when commited to the surface 2019-02-26 13:51:28 +00:00
touch_input_test.cpp Hide mouse cursor when interacting with touch screen 2018-12-13 18:55:46 +01:00
transient_no_input_test.cpp [wayland] XdgPopup Positioning 2018-10-20 17:17:59 +01:00
transient_placement.cpp [autotests] Check the configure request sent to popups 2019-02-26 13:41:00 +00:00
virtual_desktop_test.cpp [autotests] Update tests to use stable version of xdg-shell 2019-01-20 13:52:30 +02:00
window_rules_test.cpp Re-evaluate the window rules when the window class of a Client changes 2018-11-07 09:33:39 +01:00
window_selection_test.cpp Rework InputDeviceHandler focus tracking 2018-12-02 21:36:11 +01:00
x11_client_test.cpp Introduce the concept of an internal window system independent id 2018-12-01 12:17:05 +01:00
xwayland_input_test.cpp [platforms/virtual] Add virtual output class 2018-03-19 22:12:22 +01:00
xwayland_selections_test.cpp Remove X clipboard sync helper and rename its autotest 2019-02-19 12:30:43 +01:00