Commit Graph

2067 Commits (a6463653b91eee5f8a79171f76c8a96328a7e8dc)

Author SHA1 Message Date
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
Thomas Lübking 766bc27940 tag window being moved before dropping out of QuickTile/Max and omit wobble if window being moved during maximization change
BUG: 222102
REVIEW: 104841
FIXED-IN: 4.9
2012-05-03 18:54:30 +02:00
Thomas Lübking cd8e84f5f2 activate dragged window if not using present windows in desktop grid
BUG: 254044
REVIEW: 104247
FIXED-IN: 4.9
2012-05-03 17:50:43 +02:00
Thomas Lübking 494ffbdfd4 swap desktops in desktopgrid w/o swapping traversed desktops
BUG: 252699
REVIEW: 104247
FIXED-IN: 4.9
2012-05-03 17:49:43 +02:00
Thomas Lübking 8b175b7044 don't exit desktop grid when clicking into empty space
BUG: 244216
REVIEW: 104247
FIXED-IN: 4.9
2012-05-03 17:48:44 +02:00
Ghislain MARY 8ebba542b0 Save and restore zoom value for desktop zoom and magnifier effects
REVIEW: 104597
BUG: 189956
FIXED-IN: 4.9.0
2012-05-03 16:38:56 +02:00
Martin Gräßlin 9aa30ad976 Cleanup of Desktop Grid: remove unused variables
Remove two unused variables the compiler nagged about
and remove commented code.

REVIEW: 104836
2012-05-03 11:40:07 +02:00
Martin Gräßlin f2069112c2 Fix crash on closing present windows due to filter frame being null
Crash got introduced with bbf561ef9726e574684b67d53fc3c56cfc4e2e89

Also fixing coding style issue introduced in same commit.
2012-05-03 10:34:09 +02:00
Martin Gräßlin d05d55b140 Delay creation of EffectFrames till needed
Creating an EffectFrame requires I/O which takes on my system
during testing between 10 and 40 msec. Also it needs a little
bit of memory.

This changes moves out the creation of EffectFrames at Effect
load till the Effect actually needs the EffectFrame. E.g. if a
user does not filter in PresentWindows there is no need to ever
create it.

BoxSwitch effect is ignored as it should be dropped for 4.9.

REVIEW: 104815
2012-05-03 09:10:48 +02:00
Martin Gräßlin 8489ede9aa Move loading of Cube textures into thread
Cube effect loads 0 to 2 textures which has been
performed during configuration. This change delays
loading the textures till cube is activated for the
first time and the loading from file is moved into
a thread.

This means that for a very short time the texture
is not yet visible, but this is not a problem as
the cube animates from fully opaque starting state.
So during the loading the texture would not be
visible anyway.

REVIEW: 104807
2012-05-03 09:07:06 +02:00
Thomas Lübking c2940d8889 polish track mouse effect, add xrender implementation 2012-05-02 21:56:18 +02:00
Thomas Lübking c8320b0db7 Avoid continious repaints in Present Windows effect
REVIEW: 104787
2012-04-30 22:37:40 +02:00
Thomas Lübking b12279b6ed implement mousemark effect for xrender
BUG: 298338
FIXED-IN: 4.8.3
REVIEW: 104674
2012-04-20 23:59:32 +02:00
Philipp Knechtges 93b2674313 kwin: dropping several gl(Push|Pop)(Attrib|Matrix) calls
This makes kwin in OpenGL2 mode more coherent with kwin_gles.
Despite some fullscreen effects they should now make the same
(pure) OpenGL calls.

REVIEW: 103804
2012-04-19 21:01:46 +02:00
Thomas Lübking ab86f0e837 add screen inversion through XF86VidModeSetGammaRamp or XRRSetCrtcGamma
use opengl invert effect as fallback

REVIEW: 104371
2012-04-17 21:11:03 +02:00
Michael Palimaka c04fca92f9 Fix KWin build failure when OpenGL is disabled and OpenGLES is enabled.
Some old restructuring caused -DKWIN_HAVE_OPENGLES to no longer be
passed to the compiler, causing OpenGL-specific code to be built
while the libraries to link it were not available.

REVIEW: 104558
2012-04-15 05:12:41 +10:00
Aleix Pol 73c142fe45 Extend the screenshot effect API.
Makes it possible to take a screenshot for a given window ID.

REVIEW: 104388
2012-04-12 13:13:49 +02:00
Martin Gräßlin 7c00ab45f7 Add default values to Fade Effect
Without default values readConfig returns undefined values
causing the effect not to work. This needs to be documented.
2012-04-09 11:26:51 +02:00
Thomas Lübking edfb40a95a guard a remaining m_closeView pointer
BUG: 297234
2012-04-01 17:02:59 +02:00
Martin Gräßlin 27643f5a9e Drop kephal dependency from KWin
Kephal has turned into not being more than a wrapper around
QDesktopWidget and does not even provide syntax sugar.

REVIEW: 104427
2012-04-01 08:11:57 +02:00
Martin Gräßlin c16550f728 Use desktop icon for Show Desktop entry in TabBox
For the normal TabBox the TabBoxClient's icon method is
adjusted to use the "user-desktop" icon instead of the
window icon.

For the effects a method to set the caption is extended
to also set the icon on the caption frame.

REVIEW: 104444
2012-04-01 08:06:12 +02:00
Martin Gräßlin 68acc0692f Add Cursor key navigation to Flip- and Cover Switch Effects
FlipSwitch can be navigated with up and down keys as well
as left/right  and CoverSwitch only with left and right
keys while Alt+Tab is used.

REVIEW: 104438
FEATURE: 178595
FIXED-IN: 4.9.0
2012-04-01 07:57:17 +02:00
Martin Gräßlin 96c1046158 Synchronize Show Desktop Wording in TabBox Effects
Use "Show Desktop" for the desktop entry with the same
message as in "normal" TabBox.

FEATURE: 273478
FIXED-IN: 4.9.0
REVIEW: 104436
2012-04-01 07:57:17 +02:00
Thomas Lübking 41eea9dd3b Don't highlight windows w/o mouse
CCBUG: 292630
REVIEW: 104264
2012-03-30 15:27:37 +02:00
Martin Gräßlin 5ac29a5984 Remove TabBox related code from PresentWindows Effect
Present Windows mode has been replaced by a window switcher
layout which obsoletes the hack inside the present windows
effect.
2012-03-25 11:54:32 +02:00
Martin Gräßlin 05198bc2b7 Ifdef XRender related code in Screenshot effect
For PA KWin is compiled without XRender but with Screenshot effect
causing the compile to fail.
2012-03-24 08:08:12 +01:00
Script Kiddy 2440a67990 SVN_SILENT made messages (.desktop file) 2012-03-22 09:23:55 +01:00
Thomas Lübking 5bf62e5308 add xrender support to screenshot effect
REVIEW: 104152
cherry-picked from 30ee236d9d7a9c42d763fa4704156846cfa6af25
2012-03-21 00:36:29 +01:00
Martin Gräßlin 2f6784be57 Remove slot for no-longer existing signal in Slideback
Leftover from tabbing rewrite.
2012-03-16 11:40:47 +01:00
Thomas Lübking 2b2877ddb1 add present windows by class to active screen edges
BUG: 288960
2012-03-14 02:29:56 +01:00
Thomas Lübking 03e18bc88b Merge branch 'KDE/4.8' 2012-03-14 00:18:11 +01:00
Thomas Lübking 74078d7a91 implement xrender support for snaphelper
REVIEW: 104203
2012-03-13 21:38:55 +01:00
Thomas Lübking f62bb93185 xrender support for magnifier
REVIEW: 104201
2012-03-13 21:38:55 +01:00
Martin Gräßlin ab0daa1701 FadeDesktop effect ported to JavaScript 2012-03-12 21:37:42 +01:00
Martin Gräßlin f8c0616574 Fade effect goes JavaScript
Our first effect written in JavaScript to replace an existing C++
effect. Fade effect has been chosen as it has shown to be problematic
in the past and would have needed a migration to AnimationEffect anyway.
2012-03-12 21:37:42 +01:00
Martin Gräßlin 2007a7eab8 Use namespaced parameters in signals
Required to get scripting bindings working.
2012-03-12 21:37:40 +01:00
Thomas Lübking d50bf4e283 Merge branch 'KDE/4.8' 2012-03-11 23:50:42 +01:00