Commit graph

2654 commits

Author SHA1 Message Date
Martin Gräßlin
5ea990a740 Export global pointer shortcuts to effect system and use it for cube
Used in cube effect as an example with hard coded ctrl+alt+left click.

BUG: 163121
2014-03-19 14:14:56 +01:00
Martin Gräßlin
b57885a1bf Add registerGlobalShortcut method to kwineffects
Implemented in KWin core to forward to new global shortcut system. This
method should be extended/changed once we go to Qt5/KF5 to make the usage
easier (no more KAction).

Each global shortcut in the effects makes use of this new method.
2014-03-19 14:14:56 +01:00
Martin Gräßlin
0265ae48ec Completely remove the legacy ksmserver shutdown effect
Painting was already disabled in the effect inside ksmserver, thus it
was more or less dead code. Let's remove it completely.

This also allows to remove the "temporary" hack inside KWin's logout
effect.

REVIEW: 116869
2014-03-18 17:25:08 +01:00
Martin Gräßlin
7b14c84819 [kwin] Remove DragToClose from Present Windows Effect
It was a stupid idea, never made it into production, clutters the code,
makes EffectFrame more complex... -> drop.

REVIEW: 116861
2014-03-18 08:14:00 +01:00
l10n daemon script
07a5088f42 SVN_SILENT made messages (.desktop file) 2014-03-18 05:07:11 +00:00
Aleix Pol
c72e519d9c Remove KDE/ prefix in include directories
It's unneeded and deprecated since KF5.
2014-03-17 16:24:10 +01:00
Martin Gräßlin
161d8a83ea [kwin] Remove unused variable in Cube Effect
Left over from OpenGL1 removal.
2014-03-17 09:14:19 +01:00
l10n daemon script
5e5b1100b2 SVN_SILENT made messages (.desktop file) 2014-03-17 04:41:37 +00:00
l10n daemon script
4d9c6af719 SVN_SILENT made messages (.desktop file) 2014-03-14 07:37:21 +00:00
Martin Gräßlin
aeb90a2411 [kwin] Introduce a X-KWin-Internal in kwineffect services
X-KWin-Internal should be used for effects which are either internal
to KWin and are configured at a different location in KWin. Examples
are:
 * CoverSwitch - configured in WindowSwitcher KCM, but not FlipSwitch
   as that one has a non WindowSwitcher mode
 * window geometry - configured in moving

And it should also be used for helper effects to the overall
kde-workspace module. Examples are:
 * Dashboard - required by Plasma
 * KScreen - required for KScreen
 * Screenshot - required by KSnapshot

Why a new category and not the already existing NoShow property?
The idea is to just filter on the effects in the list. Thus it should
be possible to show them. But NoShow is clearly intended to not be
shown at all.

REVIEW: 116754
2014-03-13 09:09:44 +01:00
l10n daemon script
2242efeb06 SVN_SILENT made messages (.desktop file) 2014-03-13 04:46:24 +00:00
Martin Gräßlin
03ae8af5ef [kwin/effects] Put all minimize effects into an exclusive category
Still under Appearance but mutual exclusive by category with name
"minimize".

REVIEW: 116750
2014-03-12 16:32:42 +01:00
Martin Gräßlin
d4201d90a8 [kwin] Disconnect lambda connection on destroy of slide effect
Lambda connections are tricky: they do not get automatically
disconnected when the captured [this] gets destroyed, but they get
disconnected when the sender object gets destroyed.

Thus the slide effect was crashing if it got disabled and a window
got deleted, because the connection was still present and tried to
access the destroyed this pointer.

To circumvent we need to pass this as context object.

REVIEW: 116712
2014-03-12 16:31:52 +01:00
Martin Gräßlin
612e1b525e [kwin/effects] Put all magnifiers into an exclusive category
Still under Accessibility but mutual exclusive by category with
name "magnifiers".

REVIEW: 116749
2014-03-12 16:28:44 +01:00
Martin Gräßlin
d85f9971e0 [kwin] Introduce a X-KWin-Exclusive-Category in kwineffects service
All effects with

X-KWin-Exclusive-Category=category

are considered as mutual exclusive for specified category. So far this is
just a hint for the GUI representation. Such effects should get a
radio button while effects in the same category without that property
or with it set to false should get a checkbox.

As a first step the desktop change animation effects use this property
and are put into a new category "Virtual Desktop Switching Animation".

REVIEW: 116710
2014-03-12 07:34:50 +01:00
Martin Gräßlin
b5451a7183 [kwin] Re-add desktop cube animation effects to our built in effects
Got lost in the transition to built-in effects.
2014-03-11 09:53:19 +01:00
l10n daemon script
9b402662b5 SVN_SILENT made messages (.desktop file) 2014-03-11 05:14:45 +00:00
Martin Gräßlin
2675b5d4e7 Merge branch 'KDE/4.11'
Conflicts:
	CMakeLists.txt
	kcontrol/screensaver/screensaver.desktop
	kdm/kfrontend/themes/elarun/KdmGreeterTheme.desktop
	khotkeys/kcm_hotkeys/kcm_hotkeys.cpp
	kinfocenter/main.cpp
	kscreensaver/kblank_screensaver/blankscrn.cpp
	kscreensaver/krandom_screensaver/random.cpp
	kstyles/oxygen/config/main.cpp
	kstyles/oxygen/demo/main.cpp
	ksysguard/gui/ksysguard.cpp
	kwin/clients/oxygen/demo/main.cpp
	kwin/kcmkwin/kwincompositing/kwincompositing.desktop
	kwin/tabbox/qml/clients/text/metadata.desktop
	kwin/tabbox/qml/clients/window_strip/metadata.desktop
	libs/plasmagenericshell/widgetsexplorer/package/metadata.desktop
	plasma/desktop/applets/pager/package/metadata.desktop
	plasma/desktop/shell/activitymanager/package/metadata.desktop
	plasma/desktop/shell/data/layouts/org.kde.plasma-desktop.defaultPanel/contents/layout.js
	plasma/desktop/shell/desktopcorona.cpp
	plasma/desktop/shell/main.cpp
	plasma/desktop/toolboxes/plasma-toolbox-desktoptoolbox.desktop
	plasma/desktop/toolboxes/plasma-toolbox-paneltoolbox.desktop
	plasma/generic/applets/batterymonitor/contents/ui/batterymonitor.qml
	plasma/generic/applets/systemtray/protocols/fdo/fdographicswidget.cpp
	plasma/generic/applets/systemtray/protocols/fdo/fdographicswidget.h
	plasma/generic/applets/systemtray/protocols/fdo/x11embeddelegate.cpp
	plasma/generic/runners/nepomuksearch/plasma-runner-nepomuksearch.desktop
	plasma/generic/wallpapers/color/plasma-wallpaper-color.desktop
	plasma/generic/wallpapers/image/plasma-wallpaper-image.desktop
	plasma/netbook/shell/nettoolbox/plasma-toolbox-nettoolbox.desktop
	statusnotifierwatcher/statusnotifierwatcher.cpp
	systemsettings/app/main.cpp
2014-03-10 21:21:16 +01:00
Kai Uwe Broulik
bf72d31c5c Make scalein effect (feel) quicker
Inspired by the recent slidingpopups patch this aims to make the scalein effect feel a lot quicker.
It only scales the window from 0.75 to 1. Animation duraton is shortened to match the separate "fade" effect.

REVIEW: 115763
2014-03-10 20:46:41 +01:00
Martin Gräßlin
c7d986c7fe [kwin] Remove the legacy OpenGL 1 compositing backend
KWin already has a de facto OpenGL 2 dependency through QML. Combined
with the fact that the OpenGL 1 backend is basically unmaintained and
also unused, it's better to remove it for the new major release.

This change includes:
 * Removal of cmake option KWIN_BUILD_OPENGL_1_COMPOSITING
 * Removal of KWIN_HAVE_OPENGL_1 compile option and all code
   ifdef'ed with it (partially removal of if-else constructs)
 * Removal of CompositingType::OpenGL1Compositing (flags are kept
   as a core flag should get introduced)
 * Driver recommendation for OpenGL1Compositing changed to XRender
   (should be evaluated whether the drivers can provide GL2)
 * Removal of configuration option "GLLegacy"
 * Removal of fooMatrix function in kwinglutils
 * Removal of ARBBlurShader
 * Removal of legacy code path in GLVertexBuffer
 * Removal of GLShaderManager::disable
 * if-blocks with ShaderManager::instance()->isValid() removed

REVIEW: 116042
2014-03-10 08:59:11 +01:00
Martin Gräßlin
3f0ff9b8d5 Migrate effects from displayWidth()/displayHeight() to virtualScreenSize()/virtualScreenGeometry()
Rational behind this change is that displayWidth and displayHeight are
X specific API calls in kwinglobals. For the future it's easier to only
rely on functionality which goes through the EffectsHandler API which
allows easier adjustments in KWin core.

displayWidth() and displayHeight() are only used to get the size or the
complete rect of all screens. This is also provided by:

effects->virtualScreenGeometry() or
effects->virtualScreenSize()

REVIEW: 116021
2014-03-07 08:01:44 +01:00
Martin Gräßlin
9d08d6799a Drop taskbar thumbnail effect
As Plasma components provide a thumbnail which does not use the
effect we can also remove it.

REVIEW: 115922
2014-03-05 14:45:36 +01:00
Martin Gräßlin
d8ca2403a1 [kwin] Drop the KWIN_MOBILE_EFFECTS build option
It's no longer needed as there won't be a KWin version specific to
Plasma Active. We want to have runtime adjustments of all parts in
the next version of Plasma.

REVIEW: 116563
2014-03-03 15:22:09 +01:00
l10n daemon script
b7a029619b SVN_SILENT made messages (.desktop file) 2014-03-03 04:35:02 +00:00
l10n daemon script
aec46dab21 SVN_SILENT made messages (.desktop file) 2014-03-02 08:19:29 +00:00
l10n daemon script
5ba36afac1 SVN_SILENT made messages (.desktop file) 2014-03-02 05:38:11 +00:00
Thomas Lübking
4ff958381d set highlightwindows inactive while screen locked
BUG: 331054
FIXED-IN: 4.11.7
2014-02-27 20:15:30 +01:00
Martin Gräßlin
4586767db8 [kwin] Use imported targets for all XCB libs
Requires 04f78489265b6e52cabd2980dfc417abeee3a695 from ECM
2014-02-25 15:48:39 +01:00
Thomas Lübking
2501be4465 reset desktopChangedWhileRotating on activation
BUG: 331148
FIXED-IN: 4.11.7
REVIEW: 115942
2014-02-24 20:11:31 +01:00
Thomas Lübking
bd87f1edc0 spatial present windows zoom calculation
instead 1/16 of the area, 1/4 of the bigger and 1/32
of the smaller screen/window ratio
(ie. a shaded window would typically zoom to 1/32 of the screen height)

BUG: 298402
FIXED-IN: 4.11.7
REVIEW: 115455
2014-02-24 20:11:31 +01:00
Thomas Lübking
68fc751916 be more aggressive about exiting zoom effect
CCBUG: 289336
REVIEW: 115453
2014-02-24 20:11:31 +01:00
Thomas Lübking
acaf4807ab align zoomed cursor to hotspot
BUG: 330679
FIXED-IN: 4.11.7
REVIEW: 115453
2014-02-24 20:11:31 +01:00
l10n daemon script
9c8800249a SVN_SILENT made messages (.desktop file) 2014-02-24 04:38:53 +00:00
l10n daemon script
55fee81828 SVN_SILENT made messages (.desktop file) 2014-02-23 07:31:09 +00:00
l10n daemon script
8acdbff8cc SVN_SILENT made messages (.desktop file) 2014-02-23 04:50:11 +00:00
l10n daemon script
31d0cc055b SVN_SILENT made messages (.desktop file) 2014-02-22 04:23:30 +00:00
Sebastian Kügler
d2ae57832b slidingpopups claim windowClosedGrabRole earlier
This seems like a more proper fix for the flickering issue in the
sliding popups effect. The problem is that slidingpopups grabs the
window in windowClosed, the fade effect checks it there, which makes
it racy.

In my tests, I've not seen this problem with the WindowAddedGrab, but
as far as I understand, the problem may well be present there as well.
(And my proposed trick doesn't work.) I've not seen this happening in my
debugging, however. The problem there is also less visible since the
transparency curves go into the same direction, and are more "in line
with each other".

So, fix: Move the setData(WindowClosedGrabRole, ...) call from
windowClosed into windowAdded, which makes sure it's set whenever the
window goes away.

REVIEW:115903
BUG:329991
2014-02-20 14:38:36 +01:00
Sebastian Kügler
ca172e2082 Force backgroundcontrast during slidingpopup animations
This fixes the sliding popups losing their contrast effect when
animating, less flicker.

In this patch, we temporarily force the contrast effect on, but only if
it hasn't been explicitely disabled. As soon as the animation stops, the
force flag is disabled again. For disappearing windows, we just set the
flag in the same way, but skip over the bookkeeping, since the window is
going to be deleted, anyway.

REVIEW:115902
2014-02-20 14:11:08 +01:00
Sebastian Kügler
57a0667e9d Force-enable blur for Plasma's windows during desktop slide
Without setting the property, Plasma's panel and dialogs lose the
backgroundcontrast effect during slides, which makes them flicker.

As the panel is shown on screen all the time, this is quite a visible
bug. To fix this, when the slide effect is started, we check for window
types and properties of each window, and force the blur flag on if it's
unset.

If the background contrast flag is set to false, we leave the window
alone assuming that there's a reason to force it off. Windows that
are newly added during the slide get the same treatment, so something
popping up while sliding (such as the desktop switch OSD) also gets
the background effect applied.When the effect stops or is interupted, we
unset what we've set, and clean up our internal bookkeeping.

Thanks Martin and Thomas for the thorough review!

REVIEW:115857
2014-02-19 14:02:09 +01:00
l10n daemon script
a8ec2b8bf3 SVN_SILENT made messages (.desktop file) 2014-02-19 05:16:00 +00:00
Marco Martin
337e92a78f check against the proper size 2014-02-18 11:48:18 +01:00
l10n daemon script
fab5def5e9 SVN_SILENT made messages (.desktop file) 2014-02-18 09:04:31 +00:00
l10n daemon script
6f8c3dd771 SVN_SILENT made messages (.desktop file) 2014-02-18 05:12:30 +00:00
Marco Martin
d7a2a3d31f use multiplyOpacity() 2014-02-14 10:36:51 +01:00
Marco Martin
73b1bde2a3 optional property for sliding distance
if a sliding distance is given, it will be used instead of the default.
if that distance is the whole popup size, don't fade
2014-02-13 19:45:42 +01:00
Marco Martin
36f45fda87 base size in fonts 2014-02-10 17:59:16 +01:00
Marco Martin
117d8d5262 tweak sliding popup
slide only a fixed amount of pixel and fade at the same time
TODO: dpi independent
2014-02-07 15:18:45 +01:00
l10n daemon script
0212b9d185 SVN_SILENT made messages (.desktop file) 2014-02-06 04:11:22 +00:00
Martin Gräßlin
c954a3151c [kwin] Remove another useless kdebug include 2014-02-03 11:40:16 +01:00
Martin Gräßlin
f4597a3552 [kwin] Drop unused includes to KDebug 2014-02-03 11:36:46 +01:00