kwin/autotests/integration
Roman Gilg 82d2860469 [colorcorrection] Night Color - blue light filter at nighttime
With Wayland KWin needs to provide certain services, which were provided
before that by the Xserver. One of these is gamma correction, which includes
the - by many people beloved - functionality to reduce the blue light at
nighttime. This patch provides the KWin part of that. It is self contained,
but in the end will work in tandem with a lib in Plasma Workspace and a KCM
in Plasma Desktop, which can be used to configure Night Color.

* Three modi:
** Automatic: The location and sun timings are determined automatically
   (location data updates will be provided by the workspace)
** Location: The sun timings are determined by fixed location data
** Timings: The sun timings are set manually by the user
* Color temperature value changes are smoothly applied:
** Configuration changes, which lead to other current values are changed
   in a quick way over a few seconds
** Changes on sunrise and sunset are applied slowly over the course of few
   minutes till several hours depending on the configuration
* The current color value is set immediately at startup or after suspend
  phases and VT switches. There is no flickering.
* All configuration is done via a DBus interface, changed values are tested
  on correctness and applied atomically
* Self contained mechanism, speaks directly to the hardware by setting the
  gamma ramps on the CRTC
* Currently working on DRM backend, extensible to other platform backends in
  the future
* The code is written in a way to make the classes later easily extendable to
  also provide normal color correction, as it's currently done by KGamma on X

Test Plan:
Manually with the workspace parts and added integration tests in KWin using
the virtual backend.

BUG:371494

Reviewers: #kwin, graesslin

Subscribers: kwin, plasma-devel, #kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D5928
2017-12-11 10:58:40 +01:00
..
data Add support for desktopFileName provided by NETWinInfo 2016-10-31 13:19:46 +01:00
effects [effects] Delay creation of EffectFrames in WindowGeometryEffect 2017-11-21 19:28:00 +01:00
helper XdgV6 - Kwin side 2017-09-25 16:47:30 +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 [colorcorrection] Night Color - blue light filter at nighttime 2017-12-11 10:58:40 +01:00
colorcorrect_nightcolor_test.cpp [colorcorrection] Night Color - blue light filter at nighttime 2017-12-11 10:58:40 +01:00
debug_console_test.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
decoration_input_test.cpp Merge branch 'Plasma/5.11' 2017-11-16 20:34:52 +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 XdgV6 - Kwin side 2017-09-25 16:47:30 +01:00
dont_crash_useractions_menu.cpp [autotests] Ensure TestDontCrashUseractionsMenu uses breeze 2017-07-08 10:47:17 +02:00
generic_scene_opengl_test.cpp [autotests] Drop cast to SceneOpenGL GenericSceneOpenGLTest 2017-09-08 16:06:33 +02:00
generic_scene_opengl_test.h [autotests] Test creating core context profile 2017-06-25 09:48:46 +02:00
globalshortcuts_test.cpp [autotests] Force more tests to use evdev as XKB_DEFAULT_RULES 2017-09-18 21:05:34 +02:00
idle_inhibition_test.cpp Add support for new IdleInhibition protocol 2017-11-30 21:51:36 +01:00
input_stacking_order.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
internal_window.cpp Delay syncing internal window geometry to end of cycle 2017-09-07 19:06:54 +02: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 [autotests] Support new way to run the tests without need to install 2017-11-21 20:34:52 +01:00
kwin_wayland_test.h Add support for new IdleInhibition protocol 2017-11-30 21:51:36 +01:00
kwinbindings_test.cpp [autotests] Try making KWinBindingsTest::testSwitchWindowScript more robust 2017-08-13 17:08:49 +02: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 [autotests] Force XKB_DEFAULT_RULES to evdev in ModifierOnlyShortcutsTest 2017-09-17 20:54:32 +02:00
move_resize_window_test.cpp XdgV6 - Kwin side 2017-09-25 16:47:30 +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 Fix placement of KSplash 2017-10-15 16:41:31 +02:00
plasmawindow_test.cpp [autotests] Try to make PlasmaWindowTest::testCreateDestroyX11PlasmaWindow more robust 2017-07-25 21:19:11 +02:00
platformcursor.cpp Handle situation of no XDG_RUNTIME_DIR gracefully 2016-07-13 10:00:46 +02:00
pointer_constraints_test.cpp XdgV6 - Kwin side 2017-09-25 16:47:30 +01:00
pointer_input.cpp [autotests] Try to detect whether distro calls cursor theme DMZ-White or Vanilla-DMZ 2017-09-24 14:53:55 +02:00
quick_tiling_test.cpp Fix regression from KWin 5.9 regarding quick tiling 2017-12-04 17:25:40 +01:00
scene_opengl_es_test.cpp [autotests] Introduce a SceneOpenGL ES test 2017-06-24 21:05:49 +02:00
scene_opengl_test.cpp [autotests] Introduce a SceneOpenGL ES test 2017-06-24 21:05:49 +02:00
scene_qpainter_test.cpp XdgV6 - Kwin side 2017-09-25 16:47:30 +01: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 [autotest] Disable default TabBox on touch screen edge in ScreenEdgeClientShowTest 2017-06-19 21:54:11 +02:00
shade_test.cpp Handle situation of no XDG_RUNTIME_DIR gracefully 2016-07-13 10:00:46 +02:00
shell_client_rules_test.cpp Support initial minimize rule in ShellClient 2017-10-19 18:00:42 +02:00
shell_client_test.cpp [autotests] Support new way to run the tests without need to install 2017-11-21 20:34:52 +01:00
showing_desktop_test.cpp Restore active client after ending showing desktop 2017-07-01 08:20:01 +02:00
start_test.cpp [autotests] Try making StartTest more robust on FreeBSD 2017-09-23 15:17:19 +02:00
struts_test.cpp [autotests] Try making StrutsTest::testWindowMoveWithPanelBetweenScreens more robust 2017-08-09 17:54:42 +02:00
tabbox_test.cpp [autotests/integration] Use socketpair for Wayland connection 2016-12-15 21:31:27 +01:00
test_helpers.cpp Add support for new IdleInhibition protocol 2017-11-30 21:51:36 +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
virtual_desktop_test.cpp remove xdgv6 use from 5.11 branch 2017-10-02 08:49:37 +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 [autotests] Force more tests to use evdev as XKB_DEFAULT_RULES 2017-09-18 21:05:34 +02:00
x11_client_test.cpp Properly update the visible (icon) name when the caption changes 2017-09-23 11:50:48 +02:00
xclipboardsync_test.cpp [autotests] Support new way to run the tests without need to install 2017-11-21 20:34:52 +01:00
xwayland_input_test.cpp Warp the xcb pointer whenever pointer leaves an X11 surface 2016-08-24 13:12:06 +02:00