2014-04-29 06:25:19 +00:00
|
|
|
# KI18N Translation Domain for this library
|
2015-01-28 08:46:31 +00:00
|
|
|
add_definitions(-DTRANSLATION_DOMAIN=\"kwin_effects\" -DEFFECT_BUILTINS)
|
2014-04-29 06:25:19 +00:00
|
|
|
|
2014-04-16 12:27:48 +00:00
|
|
|
include_directories(${KWIN_SOURCE_DIR}) # for xcbutils.h
|
|
|
|
|
2013-02-25 11:05:36 +00:00
|
|
|
set(kwin_effect_OWN_LIBS
|
|
|
|
kwineffects
|
|
|
|
)
|
|
|
|
|
2014-03-16 14:31:23 +00:00
|
|
|
if( KWIN_HAVE_XRENDER_COMPOSITING )
|
|
|
|
set(kwin_effect_OWN_LIBS ${kwin_effect_OWN_LIBS} kwinxrenderutils)
|
|
|
|
endif()
|
|
|
|
|
2013-02-25 11:05:36 +00:00
|
|
|
set(kwin_effect_KDE_LIBS
|
2014-03-24 12:02:48 +00:00
|
|
|
KF5::ConfigGui
|
2013-12-11 20:41:47 +00:00
|
|
|
KF5::ConfigWidgets
|
2013-12-09 08:33:58 +00:00
|
|
|
KF5::GlobalAccel
|
2013-12-11 20:41:47 +00:00
|
|
|
KF5::I18n
|
|
|
|
KF5::WindowSystem
|
2013-10-15 23:36:24 +00:00
|
|
|
KF5::Plasma # screenedge effect
|
2013-12-11 20:41:47 +00:00
|
|
|
KF5::IconThemes
|
|
|
|
KF5::Service
|
2016-11-16 08:50:18 +00:00
|
|
|
KF5::Notifications # screenshot effect
|
2013-03-11 08:33:38 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
set(kwin_effect_QT_LIBS
|
2013-10-02 13:23:56 +00:00
|
|
|
Qt5::Concurrent
|
2013-08-20 07:10:18 +00:00
|
|
|
Qt5::DBus
|
|
|
|
Qt5::Quick
|
|
|
|
Qt5::X11Extras
|
2013-02-25 11:05:36 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
set(kwin_effect_XLIB_LIBS
|
2013-03-04 07:50:23 +00:00
|
|
|
${X11_X11_LIB}
|
2013-02-25 11:05:36 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
set(kwin_effect_XCB_LIBS
|
2014-02-25 14:48:39 +00:00
|
|
|
XCB::XCB
|
|
|
|
XCB::IMAGE
|
|
|
|
XCB::XFIXES
|
2013-02-25 11:05:36 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
if( KWIN_HAVE_XRENDER_COMPOSITING )
|
2014-02-25 14:48:39 +00:00
|
|
|
set(kwin_effect_XCB_LIBS ${kwin_effect_XCB_LIBS} XCB::RENDER)
|
2013-02-25 11:05:36 +00:00
|
|
|
endif()
|
|
|
|
|
2015-10-30 12:47:37 +00:00
|
|
|
set(kwin_effect_OWN_LIBS ${kwin_effect_OWN_LIBS} kwinglutils)
|
2013-02-25 11:05:36 +00:00
|
|
|
|
2011-07-17 15:27:14 +00:00
|
|
|
macro( KWIN4_ADD_EFFECT_BACKEND name )
|
2014-01-17 12:46:04 +00:00
|
|
|
add_library( ${name} SHARED ${ARGN} )
|
2014-03-16 14:49:44 +00:00
|
|
|
target_link_libraries( ${name} PRIVATE ${kwin_effect_OWN_LIBS} ${kwin_effect_KDE_LIBS} ${kwin_effect_QT_LIBS} ${kwin_effect_XLIB_LIBS} ${kwin_effect_XCB_LIBS})
|
2013-02-25 10:44:26 +00:00
|
|
|
endmacro()
|
2007-11-02 17:28:21 +00:00
|
|
|
|
2007-04-29 17:35:43 +00:00
|
|
|
# Adds effect plugin with given name. Sources are given after the name
|
2009-02-05 15:35:38 +00:00
|
|
|
macro( KWIN4_ADD_EFFECT name )
|
2013-11-15 12:37:47 +00:00
|
|
|
kwin4_add_effect_backend(kwin4_effect_${name} ${ARGN})
|
2014-01-17 12:46:04 +00:00
|
|
|
|
|
|
|
set_target_properties(kwin4_effect_${name} PROPERTIES VERSION 1.0.0 SOVERSION 1 )
|
2013-10-14 07:04:03 +00:00
|
|
|
set_target_properties(kwin4_effect_${name} PROPERTIES OUTPUT_NAME ${KWIN_NAME}4_effect_${name})
|
2014-01-17 12:46:04 +00:00
|
|
|
install(TARGETS kwin4_effect_${name} ${INSTALL_TARGETS_DEFAULT_ARGS} )
|
2011-07-17 15:27:14 +00:00
|
|
|
|
2013-02-25 10:44:26 +00:00
|
|
|
endmacro()
|
2009-02-05 15:35:38 +00:00
|
|
|
|
|
|
|
# Install the KWin/Effect service type
|
|
|
|
install( FILES kwineffect.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR} )
|
2007-05-22 16:58:10 +00:00
|
|
|
|
2009-02-05 15:35:38 +00:00
|
|
|
# Create initial variables
|
|
|
|
set( kwin4_effect_include_directories )
|
2007-04-29 17:35:43 +00:00
|
|
|
|
2014-03-17 13:56:11 +00:00
|
|
|
set( kwin4_effect_builtins_sources
|
|
|
|
logging.cpp
|
|
|
|
effect_builtins.cpp
|
|
|
|
blur/blur.cpp
|
|
|
|
blur/blurshader.cpp
|
2016-11-24 07:07:51 +00:00
|
|
|
colorpicker/colorpicker.cpp
|
2014-03-17 13:56:11 +00:00
|
|
|
cube/cube.cpp
|
|
|
|
cube/cube_proxy.cpp
|
|
|
|
cube/cubeslide.cpp
|
|
|
|
coverswitch/coverswitch.cpp
|
|
|
|
desktopgrid/desktopgrid.cpp
|
|
|
|
diminactive/diminactive.cpp
|
|
|
|
flipswitch/flipswitch.cpp
|
|
|
|
glide/glide.cpp
|
|
|
|
invert/invert.cpp
|
|
|
|
lookingglass/lookingglass.cpp
|
|
|
|
magiclamp/magiclamp.cpp
|
|
|
|
magnifier/magnifier.cpp
|
|
|
|
mouseclick/mouseclick.cpp
|
|
|
|
mousemark/mousemark.cpp
|
|
|
|
presentwindows/presentwindows.cpp
|
|
|
|
presentwindows/presentwindows_proxy.cpp
|
|
|
|
resize/resize.cpp
|
[effects] Add Scale effect
Summary:
The new effect scales windows as they appear and disappear.
As the the most of window animation effects, it is a monolithic effect,
i.e., if you enable scale effect, it will animate *both* the appearing and
disappearing.
The main difference between the Scale effect and the Scale in effect is
that the Scale in effect only animates windows as they appear. There is
no corresponding "the Scale out" effect, which is odd. Other points that
differentiate the Scale effect from the Scale in effect:
* it is more subtle;
* it doesn't animate the log out screen;
* it doesn't conflict with the Fade effect, etc.
... and overall, the Scale effect supersedes the Scale in effect.
{F5904947}
//Window open animation.//
{F5904948}
//Window close animation.//
{F5905283, layout=center, size=full}
//KCM.//
Test Plan:
* Enabled this effect
* Opened/closed System Settings
Reviewers: #kwin, #plasma, #vdg, davidedmundson
Reviewed By: #kwin, #plasma, #vdg, davidedmundson
Subscribers: ngraham, davidedmundson, fvogt, kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D13461
2018-06-10 11:02:46 +00:00
|
|
|
scale/scale.cpp
|
2014-03-17 13:56:11 +00:00
|
|
|
showfps/showfps.cpp
|
2017-12-30 17:17:13 +00:00
|
|
|
slide/slide.cpp
|
2014-03-17 13:56:11 +00:00
|
|
|
thumbnailaside/thumbnailaside.cpp
|
2016-08-16 18:16:41 +00:00
|
|
|
touchpoints/touchpoints.cpp
|
2014-03-17 13:56:11 +00:00
|
|
|
trackmouse/trackmouse.cpp
|
|
|
|
windowgeometry/windowgeometry.cpp
|
|
|
|
wobblywindows/wobblywindows.cpp
|
|
|
|
zoom/zoom.cpp
|
|
|
|
)
|
|
|
|
|
2016-01-26 14:38:42 +00:00
|
|
|
qt5_add_resources( kwin4_effect_builtins_sources shaders.qrc )
|
|
|
|
|
2014-03-17 13:56:11 +00:00
|
|
|
kconfig_add_kcfg_files(kwin4_effect_builtins_sources
|
|
|
|
blur/blurconfig.kcfgc
|
|
|
|
cube/cubeslideconfig.kcfgc
|
|
|
|
cube/cubeconfig.kcfgc
|
|
|
|
coverswitch/coverswitchconfig.kcfgc
|
|
|
|
desktopgrid/desktopgridconfig.kcfgc
|
|
|
|
diminactive/diminactiveconfig.kcfgc
|
2016-11-16 07:13:38 +00:00
|
|
|
fallapart/fallapartconfig.kcfgc
|
2014-03-17 13:56:11 +00:00
|
|
|
flipswitch/flipswitchconfig.kcfgc
|
|
|
|
glide/glideconfig.kcfgc
|
|
|
|
lookingglass/lookingglassconfig.kcfgc
|
|
|
|
magiclamp/magiclampconfig.kcfgc
|
|
|
|
magnifier/magnifierconfig.kcfgc
|
|
|
|
mouseclick/mouseclickconfig.kcfgc
|
|
|
|
mousemark/mousemarkconfig.kcfgc
|
|
|
|
presentwindows/presentwindowsconfig.kcfgc
|
|
|
|
resize/resizeconfig.kcfgc
|
[effects] Add Scale effect
Summary:
The new effect scales windows as they appear and disappear.
As the the most of window animation effects, it is a monolithic effect,
i.e., if you enable scale effect, it will animate *both* the appearing and
disappearing.
The main difference between the Scale effect and the Scale in effect is
that the Scale in effect only animates windows as they appear. There is
no corresponding "the Scale out" effect, which is odd. Other points that
differentiate the Scale effect from the Scale in effect:
* it is more subtle;
* it doesn't animate the log out screen;
* it doesn't conflict with the Fade effect, etc.
... and overall, the Scale effect supersedes the Scale in effect.
{F5904947}
//Window open animation.//
{F5904948}
//Window close animation.//
{F5905283, layout=center, size=full}
//KCM.//
Test Plan:
* Enabled this effect
* Opened/closed System Settings
Reviewers: #kwin, #plasma, #vdg, davidedmundson
Reviewed By: #kwin, #plasma, #vdg, davidedmundson
Subscribers: ngraham, davidedmundson, fvogt, kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D13461
2018-06-10 11:02:46 +00:00
|
|
|
scale/scaleconfig.kcfgc
|
2014-03-17 13:56:11 +00:00
|
|
|
showfps/showfpsconfig.kcfgc
|
2017-12-30 17:17:13 +00:00
|
|
|
slide/slideconfig.kcfgc
|
2016-11-16 08:02:44 +00:00
|
|
|
slidingpopups/slidingpopupsconfig.kcfgc
|
2014-03-17 13:56:11 +00:00
|
|
|
thumbnailaside/thumbnailasideconfig.kcfgc
|
|
|
|
trackmouse/trackmouseconfig.kcfgc
|
|
|
|
windowgeometry/windowgeometryconfig.kcfgc
|
|
|
|
wobblywindows/wobblywindowsconfig.kcfgc
|
|
|
|
zoom/zoomconfig.kcfgc
|
|
|
|
)
|
|
|
|
|
2012-02-02 13:39:39 +00:00
|
|
|
# scripted effects
|
2013-06-03 13:05:22 +00:00
|
|
|
add_subdirectory( dialogparent )
|
2015-03-30 09:38:54 +00:00
|
|
|
add_subdirectory( eyeonscreen )
|
2012-02-02 13:39:39 +00:00
|
|
|
add_subdirectory( fade )
|
2014-03-03 10:20:03 +00:00
|
|
|
add_subdirectory( fadedesktop )
|
2017-04-05 09:16:23 +00:00
|
|
|
add_subdirectory( frozenapp )
|
2013-01-14 07:38:18 +00:00
|
|
|
add_subdirectory( login )
|
2017-03-15 16:47:13 +00:00
|
|
|
add_subdirectory( logout )
|
2014-03-03 10:20:03 +00:00
|
|
|
add_subdirectory( maximize )
|
2016-02-16 15:44:41 +00:00
|
|
|
add_subdirectory( morphingpopups )
|
2014-03-03 10:20:03 +00:00
|
|
|
add_subdirectory( translucency )
|
2015-03-28 23:15:57 +00:00
|
|
|
add_subdirectory( windowaperture )
|
2012-02-02 16:58:31 +00:00
|
|
|
|
2009-02-05 15:35:38 +00:00
|
|
|
###############################################################################
|
|
|
|
# Built-in effects go here
|
|
|
|
|
|
|
|
# Common effects
|
2014-03-17 13:56:11 +00:00
|
|
|
add_subdirectory( desktopgrid )
|
|
|
|
add_subdirectory( diminactive )
|
2014-03-03 10:20:03 +00:00
|
|
|
include( dimscreen/CMakeLists.txt )
|
|
|
|
include( fallapart/CMakeLists.txt )
|
|
|
|
include( highlightwindow/CMakeLists.txt )
|
2013-05-27 08:45:22 +00:00
|
|
|
include( kscreen/CMakeLists.txt )
|
2014-03-17 13:56:11 +00:00
|
|
|
add_subdirectory( magiclamp )
|
2014-03-03 10:20:03 +00:00
|
|
|
include( minimizeanimation/CMakeLists.txt )
|
2014-03-17 13:56:11 +00:00
|
|
|
add_subdirectory( presentwindows )
|
|
|
|
add_subdirectory( resize )
|
2013-01-31 12:31:49 +00:00
|
|
|
include( screenedge/CMakeLists.txt )
|
2014-03-17 13:56:11 +00:00
|
|
|
add_subdirectory( showfps )
|
2014-03-03 10:20:03 +00:00
|
|
|
include( showpaint/CMakeLists.txt )
|
2017-12-30 17:17:13 +00:00
|
|
|
add_subdirectory( slide )
|
2014-03-03 10:20:03 +00:00
|
|
|
include( slideback/CMakeLists.txt )
|
2009-07-23 19:06:50 +00:00
|
|
|
include( slidingpopups/CMakeLists.txt )
|
2014-03-17 13:56:11 +00:00
|
|
|
add_subdirectory( thumbnailaside )
|
|
|
|
add_subdirectory( windowgeometry )
|
|
|
|
add_subdirectory( zoom )
|
2007-10-21 13:44:40 +00:00
|
|
|
|
2009-02-05 15:35:38 +00:00
|
|
|
# OpenGL-specific effects
|
2014-03-17 13:56:11 +00:00
|
|
|
add_subdirectory( blur )
|
2013-12-01 19:28:57 +00:00
|
|
|
include( backgroundcontrast/CMakeLists.txt )
|
2014-03-17 13:56:11 +00:00
|
|
|
add_subdirectory( coverswitch )
|
|
|
|
add_subdirectory( cube )
|
|
|
|
add_subdirectory( flipswitch )
|
|
|
|
add_subdirectory( glide )
|
|
|
|
add_subdirectory( invert )
|
|
|
|
add_subdirectory( lookingglass )
|
|
|
|
add_subdirectory( magnifier )
|
|
|
|
add_subdirectory( mouseclick )
|
|
|
|
add_subdirectory( mousemark )
|
[effects] Add Scale effect
Summary:
The new effect scales windows as they appear and disappear.
As the the most of window animation effects, it is a monolithic effect,
i.e., if you enable scale effect, it will animate *both* the appearing and
disappearing.
The main difference between the Scale effect and the Scale in effect is
that the Scale in effect only animates windows as they appear. There is
no corresponding "the Scale out" effect, which is odd. Other points that
differentiate the Scale effect from the Scale in effect:
* it is more subtle;
* it doesn't animate the log out screen;
* it doesn't conflict with the Fade effect, etc.
... and overall, the Scale effect supersedes the Scale in effect.
{F5904947}
//Window open animation.//
{F5904948}
//Window close animation.//
{F5905283, layout=center, size=full}
//KCM.//
Test Plan:
* Enabled this effect
* Opened/closed System Settings
Reviewers: #kwin, #plasma, #vdg, davidedmundson
Reviewed By: #kwin, #plasma, #vdg, davidedmundson
Subscribers: ngraham, davidedmundson, fvogt, kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D13461
2018-06-10 11:02:46 +00:00
|
|
|
add_subdirectory( scale )
|
2011-08-13 13:21:51 +00:00
|
|
|
include( screenshot/CMakeLists.txt )
|
2014-03-03 10:20:03 +00:00
|
|
|
include( sheet/CMakeLists.txt )
|
|
|
|
include( snaphelper/CMakeLists.txt )
|
|
|
|
include( startupfeedback/CMakeLists.txt )
|
2014-03-17 13:56:11 +00:00
|
|
|
add_subdirectory( trackmouse )
|
|
|
|
add_subdirectory( wobblywindows )
|
2007-04-29 17:35:43 +00:00
|
|
|
|
2009-02-05 15:35:38 +00:00
|
|
|
###############################################################################
|
2007-04-29 17:35:43 +00:00
|
|
|
|
2009-02-05 15:35:38 +00:00
|
|
|
# Add the builtins plugin
|
2013-11-15 12:37:47 +00:00
|
|
|
kwin4_add_effect( builtins ${kwin4_effect_builtins_sources} )
|