kwin/autotests/integration
Martin Flöser 962a2e39ee [qpa] Prevent crash due to Surface getting null
Summary:
This is a regression due to changes in Breeze to support Qt 5.8+ behavior
change. KWin's own QPA operates like < Qt 5.7 and breeze was programmed
against that. Due to that it can happen now that Breeze hits code paths
in which KWin does not have a surface.

To trigger one only needed to open the user actions menu twice.

This change adds a test case which simulates the problem and fixes all
crashes happening in the code path.

Most likely shadows are now broken for KWin's own windows, this change is
only to prevent the crash and thus is for 5.10 branch, while shadow
fixing will go to master branch.

BUG: 382063
FIXED-IN: 5.10.4

Test Plan: New test case

Reviewers: #kwin, #plasma

Subscribers: plasma-devel, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D6533
2017-07-06 19:14:15 +02:00
..
data Add support for desktopFileName provided by NETWinInfo 2016-10-31 13:19:46 +01:00
effects [effects] Use arg="true" in the kcfg files 2017-04-15 10:03:34 +02:00
helper KillWindow support for Wayland windows 2016-11-17 14:06:42 +01:00
scripting [autotests] Fix touch screen edge test after setting a default 2017-05-02 21:17:41 +02:00
activities_test.cpp [autotests] Wrap integration tests in dbus-session-run 2016-09-14 07:59:14 +02:00
CMakeLists.txt [qpa] Prevent crash due to Surface getting null 2017-07-06 19:14:15 +02:00
debug_console_test.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
decoration_input_test.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
desktop_window_x11_test.cpp Force windows of type desktop to be opaque 2016-08-10 15:10:22 +02:00
dont_crash_aurorae_destroy_deco.cpp Handle situation of no XDG_RUNTIME_DIR gracefully 2016-07-13 10:00:46 +02:00
dont_crash_cancel_animation.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
dont_crash_empty_deco.cpp Handle situation of no XDG_RUNTIME_DIR gracefully 2016-07-13 10:00:46 +02:00
dont_crash_glxgears.cpp Handle situation of no XDG_RUNTIME_DIR gracefully 2016-07-13 10:00:46 +02:00
dont_crash_no_border.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
dont_crash_useractions_menu.cpp [qpa] Prevent crash due to Surface getting null 2017-07-06 19:14:15 +02:00
globalshortcuts_test.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
input_stacking_order.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
internal_window.cpp Add support for skipCloseAnimation for internal windows 2017-01-13 19:50:50 +01:00
keyboard_layout_test.cpp Add support for keyboard layout switching policy "winclass" 2017-04-22 08:15:59 +02:00
keymap_creation_failure_test.cpp Better handle cases when the xkb keymap fails to be created 2017-06-18 21:04:58 +02:00
kwin_wayland_test.cpp Unpolish QStyle on QApp prior to destroying internal Wayland connection 2016-11-07 11:28:06 +01:00
kwin_wayland_test.h Require Qt 5.7 and remove pre-5.7 code 2017-02-07 20:43:19 +01:00
lockscreen.cpp [autotests] Fix LockScreenTest::testKeyboardShortcut 2017-01-18 20:24:17 +01:00
maximize_test.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
modifier_only_shortcut_test.cpp Support modifier-only-shortcuts when capslock is on 2017-01-25 13:39:04 +01:00
move_resize_window_test.cpp Merge branch 'Plasma/5.9' 2017-01-30 17:03:46 +01:00
no_xdg_runtime_dir_test.cpp Handle situation of no XDG_RUNTIME_DIR gracefully 2016-07-13 10:00:46 +02:00
plasma_surface_test.cpp Support creation of PlasmaShellSurface prior to ShellSurface 2017-02-07 19:26:36 +01:00
plasmawindow_test.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
platformcursor.cpp Handle situation of no XDG_RUNTIME_DIR gracefully 2016-07-13 10:00:46 +02:00
pointer_constraints_test.cpp Improve the escape key handling for breaking constrained pointers 2017-05-12 07:06:44 +02:00
pointer_input.cpp Don't update the focused pointer Surface if a button is pressed 2017-04-20 17:02:42 +02:00
quick_tiling_test.cpp [autotests] Add test case for quick tiling on X11 2017-02-14 07:29:38 +01:00
scene_opengl_test.cpp Support restarting the OpenGL compositor on Wayland 2016-07-20 14:08:23 +02:00
scene_qpainter_test.cpp [autotests/integration] Fix SceneQPainter::testWindowScaled 2017-05-01 17:10:42 +02:00
screen_changes_test.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
screenedge_client_show_test.cpp [autotests] Add test case for showing auto-hiding panel through swipe gesture 2017-03-28 22:01:16 +02:00
shade_test.cpp Handle situation of no XDG_RUNTIME_DIR gracefully 2016-07-13 10:00:46 +02:00
shell_client_test.cpp [autotests] Adjust ShellClientTest to changes in 634dfc09e4 2017-03-29 06:49:12 +02:00
showing_desktop_test.cpp Restore active client after ending showing desktop 2017-07-01 08:20:01 +02:00
start_test.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
struts_test.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
tabbox_test.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
test_helpers.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
touch_input_test.cpp Add workaround for touch input offset for decorated windows 2017-01-25 13:58:28 +01:00
transient_no_input_test.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
transient_placement.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
window_rules_test.cpp Match window role in Rules in a case insensitive manner 2016-09-13 08:37:26 +02:00
window_selection_test.cpp Add support for interactive selection through touch events 2017-03-31 07:44:38 +02:00
x11_client_test.cpp Simplify the window title passed in from the window system 2016-11-07 11:26:48 +01:00
xclipboardsync_test.cpp Handle situation of no XDG_RUNTIME_DIR gracefully 2016-07-13 10:00:46 +02:00
xwayland_input_test.cpp Warp the xcb pointer whenever pointer leaves an X11 surface 2016-08-24 13:12:06 +02:00