kwin/plugins/qpa/CMakeLists.txt
Vlad Zagorodniy bebe81209c Port QPA away from Wayland
Summary:
So far wayland was used by internal clients to submit raster buffers
and position themselves on the screen. While we didn't have issues with
submitting raster buffers, there were some problems with positioning
task switchers. Mostly, because we had effectively two paths that may
alter geometry.

A better approach to deal with internal clients is to let our QPA use
kwin core api directly. This way we can eliminate unnecessary roundtrips
as well make geometry handling much easier and comprehensible.

The last missing piece is shadows. Both Plasma::Dialog and Breeze widget
style use platform-specific APIs to set and unset shadows. We need to
add shadows API to KWindowSystem. Even though some internal clients lack
drop-shadows at the moment, I don't consider it to be a blocker. We can
add shadows back later on.

CCBUG: 386304

Reviewers: #kwin, davidedmundson, romangg

Reviewed By: #kwin, romangg

Subscribers: romangg, kwin

Tags: #kwin

Maniphest Tasks: T9600

Differential Revision: https://phabricator.kde.org/D22810
2019-09-23 17:28:56 +03:00

41 lines
1.1 KiB
CMake

include_directories(${Qt5Core_PRIVATE_INCLUDE_DIRS})
include_directories(${Qt5Gui_PRIVATE_INCLUDE_DIRS})
set(QPA_SOURCES
abstractplatformcontext.cpp
backingstore.cpp
eglhelpers.cpp
integration.cpp
main.cpp
offscreensurface.cpp
platformcursor.cpp
screen.cpp
sharingplatformcontext.cpp
window.cpp
)
include(ECMQtDeclareLoggingCategory)
ecm_qt_declare_logging_category(QPA_SOURCES HEADER logging.h IDENTIFIER KWIN_QPA CATEGORY_NAME kwin_qpa_plugin DEFAULT_SEVERITY Critical)
add_library(KWinQpaPlugin MODULE ${QPA_SOURCES})
set_target_properties(KWinQpaPlugin PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin/platforms/")
set(QT5PLATFORMSUPPORT_LIBS
Qt5FontDatabaseSupport::Qt5FontDatabaseSupport
Qt5ThemeSupport::Qt5ThemeSupport
Qt5EventDispatcherSupport::Qt5EventDispatcherSupport
)
target_link_libraries(KWinQpaPlugin
${QT5PLATFORMSUPPORT_LIBS}
${FREETYPE_LIBRARIES} # Must be after QT5PLATFORMSUPPORT_LIBS
Fontconfig::Fontconfig
kwin
)
install(
TARGETS
KWinQpaPlugin
DESTINATION
${PLUGIN_INSTALL_DIR}/platforms/
)