Commit graph

2103 commits

Author SHA1 Message Date
Martin Gräßlin
39de3f49f7 Merge branch 'KDE/4.9' 2012-08-19 14:14:17 +02:00
Martin Gräßlin
74fe348b96 Reset shader state in TrackMouse effect prior to render it
The Shader might have left-overs from last usage which might
cause the effect to not work properly.

BUG: 304404
FIXED-IN: 4.9.1
Reviewed By: Thomas Lübking
2012-08-19 14:11:10 +02:00
Martin Gräßlin
90365e27d0 Merge branch 'KDE/4.9'
Conflicts:
	khotkeys/data/kde32b1.khotkeys
	kinfocenter/Modules/opengl/opengl.desktop
	kwin/tabbox/tests/CMakeLists.txt
	plasma/generic/applets/system-monitor/plasma-applet-sm_hdd_activity.desktop
2012-08-17 17:59:49 +02:00
Martin Gräßlin
23f2de009b Effects can provide support information through properties
The supportInformation is extended to also read the properties
on all effects. In addition each effect can be queried just for
itself through D-Bus, e.g.:
qdbus org.kde.kwin /KWin supportInformationForEffect kwin4_effect_blur

All effects are extended to provide their configured and read
settings through properties. In some cases also important
runtime information is exposed.

REVIEW: 105977
BUG: 305338
FIXED-IN: 4.9.1
2012-08-17 17:49:49 +02:00
Martin Gräßlin
628fb7f79d Adding missing newlines at end of files
SVN_SILENT
2012-08-16 08:00:32 +02:00
Ghislain MARY
e685e0f6e0 Enable mouse wheel navigation in flipswitch and coverswitch effects
BUG: 244439
FIXED-IN: 4.10
REVIEW: 105040
2012-08-15 20:58:34 +02:00
Thomas Lübking
53534f7966 Merge branch 'KDE/4.9'
Conflicts:
	plasma/generic/applets/batterymonitor/metadata.desktop
	plasma/generic/applets/lock_logout/metadata.desktop
2012-08-11 22:13:59 +02:00
Thomas Lübking
f945131cf3 ensure the feedbackRect is always up-to-date
BUG: 304253
REVIEW: 105786
FIXED-IN: 4.9.1
2012-08-11 21:42:05 +02:00
Thomas Lübking
860c7679dc check desktopNameFrame pointer in cube effect
REVIEW: 105840
BUG: 304340
FIXED-IN: 4.9.1
2012-08-11 21:41:04 +02:00
Martin Gräßlin
5f887c36e3 Merge branch 'KDE/4.9'
Conflicts:
	kwin/effects/flipswitch/flipswitch.cpp
	plasma/generic/applets/batterymonitor/metadata.desktop
2012-08-10 17:02:19 +02:00
Martin Gräßlin
e0c2a177ea Move blur behind setting for dashboard to windowAdded slot
We always want to have blur behind the Dashboard window not
just after the activitation.

BUG: 304564
FIXED-IN: 4.9.1
REVIEW: 105962
2012-08-10 16:54:50 +02:00
Martin Gräßlin
0286540c29 Properly calculate the offset between multiple screens in FlipSwitch
The code assumed that screens border to each other. That is the height
of the one screen is the y position of the other screen.

BUG: 304520
FIXED-IN: 4.9.1
REVIEW: 105958
2012-08-10 16:53:42 +02:00
Script Kiddy
d80113f376 SVN_SILENT made messages (.desktop file) 2012-08-07 18:35:48 +02:00
Script Kiddy
c79bf24903 SVN_SILENT made messages (.desktop file) 2012-08-06 09:32:20 +02:00
Raphael Kubo da Costa
7beb3f2ce9 Merge branch 'KDE/4.9'
* KDE/4.9:
  Fix callback race in the session save and shutdown code.
  Update for 4.9.0 release
  SVN_SILENT made messages (.desktop file)
  SVN_SILENT made messages (.desktop file)
  Fix regression in QML shutdown menu. Ampersands should be removed from menu entries' text by default.
  Fix typos in a message that broke string freeze.
  Fix potential parallel build failure.

Conflicts:
	CMakeLists.txt
2012-07-25 14:56:17 -03:00
Script Kiddy
9db4ae2344 SVN_SILENT made messages (.desktop file) 2012-07-24 19:29:09 +02:00
Martin Gräßlin
b734c03346 Merge branch 'KDE/4.9' 2012-07-22 10:07:40 +02:00
Martin Gräßlin
fb65e080dc Pass property minimized from Client to Deleted
Ensures that we can access the minimized property in Effects
which want to not animate a closed, minimized window.

Make use of it in the Fade Effect Script to not fade out a
minimized window which would mean showing the actual not
visible window.

BUG: 303891
FIXED-IN: 4.9.0
REVIEW: 105647
2012-07-22 10:06:30 +02:00
Martin Gräßlin
c7262e8bd3 Getter/setters for opacity, saturation and brightness in WindowPaintData
The public member variables for opacity, saturation and brightness
are removed in favor for getter and setters. The variables are
moved into a private class. Those are now qreal instead of double.

To make usage inside the effects easier a multiply method is added
which multiplies the current value with passed in factor and returns
the new value in a functional programming style.

This commit is the top-most of a patch series to refactor
ScreenPaintData and WindowPaintData. Other related commits are:
* 0811772
* ebdc7ec
* 2c8dd8d
* 7699726
* 68e0201
* 611cb09

REVIEW: 105141
BUG: 303314
FIXED-IN: 4.10
2012-07-19 18:25:48 +02:00
Martin Gräßlin
f723f132ca Drop support for explicit contents opacity from WindowPaintData
No effect has ever made use of contents opacity. Which means it
is not needed. Removing means faster effects as we used to
multiply the value (always 1.0) with the opacity in each frame
for each window.
2012-07-19 18:25:03 +02:00
Martin Gräßlin
dd067b075b Split out common part of ScreenPaintData and WindowPaintData
New common d-pointered class PaintData is added which cannot
be instantiated.
2012-07-19 18:25:03 +02:00
Martin Gräßlin
a2b0d42916 Replace translation by QVector3D in Screen/Window PaintData 2012-07-19 18:25:03 +02:00
Martin Gräßlin
0eff12eb92 Use QGraphicsScale for scale information in ScreenPaintData 2012-07-19 18:25:03 +02:00
Martin Gräßlin
966047ccd2 Replace custom RotationData with QGraphicsRotation 2012-07-19 18:25:03 +02:00
Martin Gräßlin
3125333f76 Fix logout effect including port to OpenGL 2
The logout effect was rather broken. First of all it was
excluded from build if OpenGL ES is present at build time. The
reason for this is that the effect did not work with GLES.

In order to fix that the vignetting is ported over to OpenGL 2
by using a dedicated shader. As well the lod based blur is
added through a dedicated shader and uses framebuffer blit to
get the current rendered buffer before rendering the logout
window into a texture.

Last but not least the isActive method was broken and is fixed
by checking whether the logout window is around.

BUG: 303096
FIXED-IN: 4.9.0
REVIEW: 105459
2012-07-09 21:02:57 +02:00
Thomas Lübking
34ba9411c9 use proper onCurrentDesktop instead of isOnCurrentDesktop
BUG: 302784
FIXED-IN: 4.9
REVIEW: 105394
2012-07-05 19:43:46 +02:00
Thomas Lübking
9c1b7f823c use window role to detect dashboard
BUG: 302523
FIXED-IN: 4.9
REVIEW: 105382
2012-07-05 19:43:45 +02:00
Thomas Lübking
adce67d1d7 fix startup effect repaints
REVIEW: 105376
2012-07-05 19:43:45 +02:00
Thomas Lübking
3ef69476e7 don't fade/out in windows on other desktops
BUG: 302101
FIXED-IN: 4.9
REVIEW: 105297
2012-06-18 22:12:04 +02:00
Script Kiddy
953d088b6a SVN_SILENT made messages (.desktop file) 2012-06-12 17:07:51 +02:00
Script Kiddy
071fa7053b SVN_SILENT made messages (.desktop file) 2012-06-11 10:15:37 +02:00
Script Kiddy
08a8ecaaa5 SVN_SILENT made messages (.desktop file) 2012-06-04 10:36:37 +02:00
Script Kiddy
62211420c7 SVN_SILENT made messages (.desktop file) 2012-05-28 11:08:19 +02:00
Martin Gräßlin
1de1204ecd Drop KWIN_HAVE_OPENGL defines in effects
OpenGL is nowadays a build dependency which obsoletes the define.

REVIEW: 105023
2012-05-27 16:37:26 +02:00
Martin Gräßlin
d0d274b855 Don't compare uint with int
Explicitly cast uint to int to fix a warning.
2012-05-27 16:35:04 +02:00
Martin Gräßlin
812c310dcf Fix unused variable warnings
SVN_SILENT
2012-05-27 16:35:04 +02:00
Thomas Lübking
57ce41d966 move a variable to correct context
BUG: 297757
FIXED-IN: 4.9
REVIEW: 105058
2012-05-26 13:24:46 +02:00
Martin Gräßlin
f6a0c6907a Fix compilation of screenshot effect without XRender 2012-05-26 10:24:11 +02:00
Martin Gräßlin
aebc322a74 Fix compilation of snaphelper effect without XRender 2012-05-26 09:31:04 +02:00
Martin Gräßlin
b40f27f54c Fix compilation of magnifier effect without XRender 2012-05-26 09:05:05 +02:00
Martin Gräßlin
f24103481e Ensure ScreenTransformation matrix is reset after rendering cube
Cube effect modifies the ScreenTransformation matrix. While each
window resets the matrix on a global level it's not reset. That
means if the last rendered window had the screen rotated the
ScreenTransformation keeps the rotation even after the cube
ended. This causes a rotated window in e.g. TaskbarThumbnails.

REVIEW: 104918
CCBUG: 299869
2012-05-22 18:34:11 +02:00
Martin Gräßlin
1379bbaa83 Use enum based setUniform in cube effect
A little bit more safety when setting a uniform value.

REVIEW: 104923
2012-05-22 18:31:14 +02:00
Martin Gräßlin
d14cf2da92 Show detailed information why an effect cannot be loaded
Effects can specify their minimum requirements in their
desktop file:
* OpenGL
* OpenGL 2 (GLSL required)
* Shaders (either ARB or OpenGL 2)

The configuration module uses this information in combination
with which backend KWin is currently using. So if e.g. OpenGL
is used and an effect requires OpenGL 2 a detailed error
message can be showed that OpenGL 2 is required.

BUG: 209213
FIXED-IN: 4.9.0
REVIEW: 104847
2012-05-15 18:02:57 +02:00
Martin Gräßlin
f3443a6b07 Add CMake variable to rename kwin binaries
A CMake variable is used to specify the name of the binary.
By default this is "kwin" but building for PA changes the
name to "kwinactive". The variable adjusts all names, e.g.
kwinnvidiahack becomes kwinactivenvidiahack.

The remaining usage of kwinrc in core and libs is replaced
by a cmakedefine for the configuration name and all data
installations are moved to the defined name. Dynamic loading
for scripts & co is adjusted for loading based on defined name.

This change allows the side-by-side installation of both kwin
for desktop and kwin for Plasma Desktop without the known
issues like conflicts in config files or missing build options
if kwin desktop is used for Plasma Active.

Likewise the KCMs are not adjusted as they are not intended to
be used for kwinactive.

REVIEW: 104299
BUG: 296084
FIXED-IN: 4.9.0
CCMAIL: active@kde.org
2012-05-10 10:25:15 +02:00
Ghislain MARY
c66c78f1d2 Key Bindings for Switching between Windows of current Application
Additional TabBox Mode which allows to switch between all open
windows of the current selected application. By default Alt+tilde
is used which is on qwerty just one key above tab. For non-qwerty
layouts the shortcut is unfortunately not convenient.

REVIEW: 104730
FEATURE: 299308
FIXED-IN: 4.9.0
2012-05-10 09:53:10 +02:00
Script Kiddy
ee92a35f39 SVN_SILENT made messages (.desktop file) 2012-05-10 09:48:44 +02:00
Martin Gräßlin
8dd05b6cb2 Fix error introduced with 0950f4
CCBUG: 299429
2012-05-06 20:27:47 +02:00
Martin Gräßlin
b3a813ffa7 Exclude minimized and windows not on current desktop from fade desktop
BUG: 299429
FIXED-IN: 4.9.0
2012-05-06 19:51:56 +02:00
Martin Gräßlin
151b8835f5 Resolve ambiguous connect in fade desktop scripted effect
Scripts cannot connect to a generic desktopChanged signal, but
need to explicitly state which one to use.
2012-05-06 19:46:14 +02:00
Martin Gräßlin
a79eacaed7 Properly detect effects which need OpenGL 2
Effects that need GLSL require that OpenGL 2 is active.
It does not matter whether the GPU would support it if
OpenGL 2 is not used.

Cherry-picked from db42152

CCBUG: 299426
2012-05-05 10:27:19 +02:00