kwin/autotests
David Edmundson ae6e6dc63c [scripting] Port ScriptedEffects to QJSEngine
Summary:
QScriptEngine is deprecated for years and suffers bitrot.
Plasma hit one super major bug with it in 5.11.0 and has now ported
away.

Main porting notes:
- creating low level functions no longer exists
The old global functions are exposed on the ScriptedEffect instance
and then the QJSValue wrappers of the globalObject are modified to
trampoline the methods at a wrapper level.

- We can then use QJSEngine to automatically do argument error checking
rather than unmarshalling a QJSValue manually which significantly
reduces a lot of code.

- We can't make FPX2 a native type, so these are QJSValue args and
unboxed there.

Long term I want overloads for animate that take int/QSize/QPoint which
are native JS types, but that might be an API break.

Test Plan:
Hopefully comprehensive unit test which passes
Tested fade/fadeDesktop manually.

It's a very invasive change, so I expect some things will be broke
please help test any JS effects.

Reviewers: #kwin, mart, fvogt

Subscribers: fvogt, zzag, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D14536
2021-02-23 07:47:01 +00:00
..
drm decouple DRM planes from DrmOutput 2021-02-15 17:28:58 +00:00
integration [scripting] Port ScriptedEffects to QJSEngine 2021-02-23 07:47:01 +00:00
libinput autotests: Drop TestLibinputTouchEvent::testNoAssignedSlot() 2021-02-16 12:52:08 +02:00
libkwineffects Move source code to src/ directory 2021-02-10 15:31:43 +00:00
libxrenderutils Make source code more relocatable 2021-02-10 15:31:42 +00:00
tabbox Move source code to src/ directory 2021-02-10 15:31:43 +00:00
abstract_client.h Fix minor EBN issues 2018-08-29 21:02:16 +03:00
CMakeLists.txt [scripting] Port ScriptedEffects to QJSEngine 2021-02-23 07:47:01 +00:00
fakeeffectplugin.cpp Prettify license headers 2020-08-07 19:57:56 +00:00
fakeeffectplugin.json
fakeeffectplugin_version.cpp Prettify license headers 2020-08-07 19:57:56 +00:00
fakeeffectplugin_version.json
mock_abstract_client.cpp Prettify license headers 2020-08-07 19:57:56 +00:00
mock_abstract_client.h Prettify license headers 2020-08-07 19:57:56 +00:00
mock_effectshandler.cpp Prettify license headers 2020-08-07 19:57:56 +00:00
mock_effectshandler.h Provide expected presentation time to effects 2020-12-10 07:14:42 +00:00
mock_screens.cpp Drop Platform::createScreens() 2020-12-21 09:20:16 +00:00
mock_screens.h Make source code more relocatable 2021-02-10 15:31:42 +00:00
mock_workspace.cpp Prettify license headers 2020-08-07 19:57:56 +00:00
mock_workspace.h Prettify license headers 2020-08-07 19:57:56 +00:00
mock_x11client.cpp Prettify license headers 2020-08-07 19:57:56 +00:00
mock_x11client.h Prettify license headers 2020-08-07 19:57:56 +00:00
onscreennotificationtest.cpp Make source code more relocatable 2021-02-10 15:31:42 +00:00
onscreennotificationtest.h Prettify license headers 2020-08-07 19:57:56 +00:00
opengl_context_attribute_builder_test.cpp Move source code to src/ directory 2021-02-10 15:31:43 +00:00
test_builtin_effectloader.cpp Make source code more relocatable 2021-02-10 15:31:42 +00:00
test_client_machine.cpp Make source code more relocatable 2021-02-10 15:31:42 +00:00
test_ftrace.cpp Add ftrace markers 2021-01-14 09:31:59 +00:00
test_gbm_surface.cpp Move source code to src/ directory 2021-02-10 15:31:43 +00:00
test_gestures.cpp Make source code more relocatable 2021-02-10 15:31:42 +00:00
test_plugin_effectloader.cpp Make source code more relocatable 2021-02-10 15:31:42 +00:00
test_screen_edges.cpp Make source code more relocatable 2021-02-10 15:31:42 +00:00
test_screen_paint_data.cpp Prettify license headers 2020-08-07 19:57:56 +00:00
test_scripted_effectloader.cpp [scripting] Port ScriptedEffects to QJSEngine 2021-02-23 07:47:01 +00:00
test_virtual_desktops.cpp Make source code more relocatable 2021-02-10 15:31:42 +00:00
test_virtualkeyboard_dbus.cpp Make source code more relocatable 2021-02-10 15:31:42 +00:00
test_window_paint_data.cpp Make source code more relocatable 2021-02-10 15:31:42 +00:00
test_x11_timestamp_update.cpp Prettify license headers 2020-08-07 19:57:56 +00:00
test_xcb_size_hints.cpp Make source code more relocatable 2021-02-10 15:31:42 +00:00
test_xcb_window.cpp Make source code more relocatable 2021-02-10 15:31:42 +00:00
test_xcb_wrapper.cpp Make source code more relocatable 2021-02-10 15:31:42 +00:00
test_xkb.cpp Make source code more relocatable 2021-02-10 15:31:42 +00:00
testutils.h Prettify license headers 2020-08-07 19:57:56 +00:00
workspace.h
x11client.h Rename Client to X11Client 2019-09-25 21:11:37 +03:00