You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
David Edmundson 7834bec52a [libkwineffects] Replace property name lookup with calling the virtual methods
Summary:
EffectWindow proxies its properties from the client/deleted's
properties.

QObject::property(char*) is a slow string search. It's a loop
of string comparisons not a hash lookup!

QML's use of properties is different, there's a property cache.

It's fetched multiple times for every window in every paint of some
effects (such as blur). Hotspot shows this as a significant amount of
the render pass (X11) with nothing in kwin animating.

This patch replaces the macro that does
parent()->property("propertyName")
with a macro calling the relevant function directly without metaobjects.

This also improves type safety for future changes.

Test Plan:
Existing unit tests
Ran it for a bit

Reviewers: #kwin, graesslin

Subscribers: graesslin, zzag, broulik, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D16602
6 years ago
..
CMakeLists.txt
Mainpage.dox
Messages.sh
anidata.cpp [scripting] Introduce redirect function 6 years ago
anidata_p.h [scripting] Introduce redirect function 6 years ago
kwinanimationeffect.cpp [scripting] Introduce complete function 6 years ago
kwinanimationeffect.h [scripting] Introduce complete function 6 years ago
kwinconfig.h.cmake
kwineffects.cpp [libkwineffects] Replace property name lookup with calling the virtual methods 6 years ago
kwineffects.h [libkwineffects] Replace property name lookup with calling the virtual methods 6 years ago
kwinglobals.h
kwinglplatform.cpp
kwinglplatform.h
kwingltexture.cpp
kwingltexture.h
kwingltexture_p.h
kwinglutils.cpp
kwinglutils.h
kwinglutils_funcs.cpp
kwinglutils_funcs.h
kwinxrenderutils.cpp
kwinxrenderutils.h
logging.cpp
logging_p.h