kwin/autotests
Martin Flöser b7ad4bcf88 Keep fullscreen windows in active layer based on transients not the group
Summary:
So far a not-active fullscreen X11 window was kept in the active layer if
the newly activated window is in the same group (that is same client
leader). For example a fullscreen X11 kwrite window is in the active layer
if another kwrite window is active. The two kwrite windows obviously
don't have anything to do with each other, but are in the same group.

This creates problems as it's not possible to raise other windows above
the active not-fullscreen kwrite window. E.g. the panel is stacked below.

The idea behind the check makes sense: if a fullscreen window opens
another window (e.g. a configuration dialog) it should not be put back
to normal layer. Thus the check is adjusted whether the new active
window is a transient to the fullscreen window. Thus the intention is
still the same, but does not cause the problems.

As the code now does not need to differentiate between X11 and Wayland
windows (group only on X11) the Client specific implementation is
removed and the method unvirtual'ed.

BUG: 388310
FIXED-IN: 5.12.0

Test Plan: Test passes

Reviewers: #kwin, #plasma

Subscribers: plasma-devel, kwin

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D9699
2018-01-10 17:44:00 +01:00
..
drm [autotests] Support new way to run the tests without need to install 2017-11-21 20:34:52 +01:00
integration Keep fullscreen windows in active layer based on transients not the group 2018-01-10 17:44:00 +01:00
libinput Pass SwitchEvent from LibInput through KWin and add to DebugConsole 2018-01-09 19:32:58 +01:00
libkwineffects [autotests] Support new way to run the tests without need to install 2017-11-21 20:34:52 +01:00
libxrenderutils [autotests] Support new way to run the tests without need to install 2017-11-21 20:34:52 +01:00
tabbox [autotests] Support new way to run the tests without need to install 2017-11-21 20:34:52 +01:00
abstract_client.h [autotests] Adjust to changes regarding AbstractClient 2015-05-08 12:43:47 +02:00
client.h [auto-tests] Add an initial test for Screens 2014-09-17 10:29:03 +02:00
CMakeLists.txt Add DBus interface to OrientationSensor and a persistent configuration 2017-12-26 22:02:47 +01:00
fakeeffectplugin.cpp [kwin] Add a PluginEffectLoader 2014-03-28 14:04:54 +01:00
fakeeffectplugin.json PluginEffectLoader doesn't use KPluginTrader any more 2015-07-07 09:36:15 +02:00
fakeeffectplugin_version.cpp [kwin] Adapt to KPluginFactory change 2014-03-28 19:50:46 +00:00
fakeeffectplugin_version.json PluginEffectLoader doesn't use KPluginTrader any more 2015-07-07 09:36:15 +02:00
mock_abstract_client.cpp Fix switch desktop through edge when moving window 2017-06-20 06:57:33 +02:00
mock_abstract_client.h Fix switch desktop through edge when moving window 2017-06-20 06:57:33 +02:00
mock_client.cpp Fix switch desktop through edge when moving window 2017-06-20 06:57:33 +02:00
mock_client.h Fix switch desktop through edge when moving window 2017-06-20 06:57:33 +02:00
mock_effectshandler.cpp Add a KSharedConfigPtr for kcminputrc to KWin::Application 2017-04-24 21:01:03 +02:00
mock_effectshandler.h Add a KSharedConfigPtr for kcminputrc to KWin::Application 2017-04-24 21:01:03 +02:00
mock_screens.cpp Warnings--: unused parameters 2015-06-12 17:17:21 +02:00
mock_screens.h add Screens::name(int screen); STUB but for XRandr 2015-05-15 23:55:27 +02:00
mock_workspace.cpp [autotests] Adjust to changes regarding AbstractClient 2015-05-08 12:43:47 +02:00
mock_workspace.h Move XRandR event filter into XRandRScreens 2017-09-12 18:53:08 +02:00
onscreennotificationtest.cpp Fade out OnScreenNotification when moving with the mouse over it 2017-01-04 18:04:15 +01:00
onscreennotificationtest.h Introduce a KWin internal on-screen-notification service 2016-12-21 19:43:49 +01:00
opengl_context_attribute_builder_test.cpp [platforms/x11] Use a GlxContextAttributeBuilder 2017-08-19 11:34:51 +02:00
test_builtin_effectloader.cpp [effects] Add a colorpicker effect 2016-11-25 09:30:34 +01:00
test_client_machine.cpp Remove KWin::display from kwinglobals 2016-11-16 18:00:00 +01:00
test_gbm_surface.cpp Fix DRM EGL crash regression 2017-10-12 10:12:24 +02:00
test_gestures.cpp Add support for activating screenedges through touch swipe gestures 2017-03-27 17:44:02 +02:00
test_plugin_effectloader.cpp new logout effect 2017-03-15 17:47:22 +01:00
test_screen_edges.cpp Move X11 specific event filtering for ScreenEdges into x11 standalone platform 2017-09-01 17:01:01 +02:00
test_screen_paint_data.cpp Pass the current output geometry to ScreenPaintData 2016-10-17 09:02:30 +02:00
test_screens.cpp Port left over qDebug to qCDebug 2015-07-31 13:25:51 +02:00
test_scripted_effectloader.cpp Port some displayWidth/displayHeight usages to Screens::size() 2017-09-01 17:11:10 +02:00
test_virtual_desktops.cpp Add support for global touchpad swipe gestures 2017-03-27 17:43:44 +02:00
test_virtualkeyboard_dbus.cpp Add DBus protocol to virtual keyboard 2017-10-19 17:59:19 +02:00
test_window_paint_data.cpp Remove the decoration opacity property 2014-08-25 17:25:04 +02:00
test_x11_timestamp_update.cpp [autotests] Support new way to run the tests without need to install 2017-11-21 20:34:52 +01:00
test_xcb_size_hints.cpp Remove KWin::display from kwinglobals 2016-11-16 18:00:00 +01:00
test_xcb_window.cpp Remove KWin::display from kwinglobals 2016-11-16 18:00:00 +01:00
test_xcb_wrapper.cpp Remove KWin::display from kwinglobals 2016-11-16 18:00:00 +01:00
test_xkb.cpp Support mapping QKeyEvent to xkb_keysym_t 2017-09-19 19:09:17 +02:00
test_xrandr_screens.cpp Support multiple event types in X11EventFilter 2016-11-16 07:48:19 +01:00
testutils.h [autotests] Fix unused function warnings 2017-07-29 18:47:58 +02:00
workspace.h [auto-tests] Add an initial test for Screens 2014-09-17 10:29:03 +02:00