Commit graph

194 commits

Author SHA1 Message Date
Martin Gräßlin
3c7343fef0 We can blur the background behind panels in present windows. They won't move and without blurring it creates artefacts.
BUG: 242561
FIXED-IN: 4.5.1

svn path=/trunk/KDE/kdebase/workspace/; revision=1141849
2010-06-23 16:47:08 +00:00
Martin Gräßlin
3f10840169 Forward port rev 1136822:
If presentwindows does not get activated, we have to revert the tabbox state or next activation is not possible.
CCBUG: 240730

svn path=/trunk/KDE/kdebase/workspace/; revision=1136823
2010-06-10 21:00:41 +00:00
Martin Gräßlin
191435d425 Move Lanczos filter from taskbarthumbnail effect into the scene and use it also in boxswitch, presentwindows and thumbnailaside effects.
svn path=/trunk/KDE/kdebase/workspace/; revision=1133901
2010-06-02 20:04:54 +00:00
Martin Gräßlin
fa7f160cb3 Window specific setting to skip window switchers (tabbox, present windows, desktop grid).
FEATURE: 171192
CCBUG: 179723

svn path=/trunk/KDE/kdebase/workspace/; revision=1122404
2010-05-03 20:04:44 +00:00
Martin Gräßlin
54c264bba0 Rearrange windows when the gemoetry changes in both pw and dg in pw mode.
BUG: 228829

svn path=/trunk/KDE/kdebase/workspace/; revision=1103206
2010-03-14 16:18:57 +00:00
Lucas Murray
51168e97a4 Keep the logout effect active until KWin is killed or the user cancels
the logout by using new information provided by KSMServer; Allow effects
to read and detect root window property notify events.

svn path=/trunk/KDE/kdebase/workspace/; revision=1083335
2010-02-01 07:44:27 +00:00
Martin Gräßlin
fb8fc3001b Do not add NULL effect windows to the motion manager.
BUG: 222193

svn path=/trunk/KDE/kdebase/workspace/; revision=1073247
2010-01-11 21:24:00 +00:00
Martin Gräßlin
26555f6aa7 Only react on tabbox key events in present windows if the effect is activated.
svn path=/trunk/KDE/kdebase/workspace/; revision=1073187
2010-01-11 20:01:25 +00:00
Martin Gräßlin
14b7540b26 It's possible that there is no active window when activating present windows for a window class. In that case do not activate the effect.
BUG: 220916

svn path=/trunk/KDE/kdebase/workspace/; revision=1068693
2010-01-01 20:45:40 +00:00
Lucas Murray
c8a086a855 Show inactive tab windows in present windows when triggered by alt+tab.
svn path=/trunk/KDE/kdebase/workspace/; revision=1065325
2009-12-23 02:01:12 +00:00
Lucas Murray
223f1f2f0b Make desktop grid follow present window layout settings.
BUG: 214722

svn path=/trunk/KDE/kdebase/workspace/; revision=1063405
2009-12-18 03:34:28 +00:00
Lucas Murray
601086c81e Disable the direction keys in present window when there is no
highlighted window on the screen. Happens when no window matches the
current filter.
BUG: 212984

svn path=/trunk/KDE/kdebase/workspace/; revision=1062343
2009-12-14 11:44:01 +00:00
Martin Gräßlin
21b30c7a37 Do not fade out windows from other desktops when selecting a window on all desktops in present windows effect.
BUG: 212551

svn path=/trunk/KDE/kdebase/workspace/; revision=1059389
2009-12-06 13:54:23 +00:00
Martin Gräßlin
3859fff0de Desktop Grid uses Present Windows to lay out the windows on a desktop
FEATURE: 165745

svn path=/trunk/KDE/kdebase/workspace/; revision=1049548
2009-11-15 12:38:26 +00:00
Lucas Murray
a0d07d12a2 Merged r970865:1049322 from /branches/work/kwin-tabbing
Adds window tabbing support to KWin.
FEATURE: 42023

svn path=/trunk/KDE/kdebase/workspace/; revision=1049334
2009-11-15 03:24:04 +00:00
Martin Gräßlin
aff72003dd The TabBox passes KeyEvents to the effects. So we can navigate with left/right/up/down in presentwindows when used as alt+tab effect. Filtering is of course disabled.
svn path=/trunk/KDE/kdebase/workspace/; revision=1042596
2009-10-30 09:16:41 +00:00
Lucas Murray
8a8428e41c Less Krazy warnings please.
svn path=/trunk/KDE/kdebase/workspace/; revision=1042572
2009-10-30 06:51:59 +00:00
Martin Gräßlin
e001fdff33 Hide the desktop windows from other virtual desktops in presentwindows. That can happen when option activity per desktop is set.
BUG: 212065

svn path=/trunk/KDE/kdebase/workspace/; revision=1042342
2009-10-29 17:02:41 +00:00
Lucas Murray
20f1a79d04 Less warnings please.
svn path=/trunk/KDE/kdebase/workspace/; revision=1031490
2009-10-05 09:47:13 +00:00
Martin Gräßlin
14e8285615 A window which is overlapping screens has to be moved to a position on its screen even if it is the only window on the screen.
BUG: 203210

svn path=/trunk/KDE/kdebase/workspace/; revision=1024193
2009-09-16 09:13:02 +00:00
Martin Gräßlin
76f17e6de1 Here comes the new TabBox. It is a complete rewrite using a MVC approach. Here some highlights:
* Models and Delegates for Clients and Desktops
 * Horizontal, vertical and tabular layout
 * Layout of one item can be configured by an XML definition
 * A desktop item can include a client list
 * An optional second list view showing only the selected item
 * A new KCM "kwintabbox"
 * An alternative TabBox with independent settings and keybindings
 * Optional Highlight Windows effect integration
 * List scrolls instead of removing items
 * Scroll wheel support
 * Cursor key support
 * Middle click on item closes window
BUG: 195745
BUG: 197187
BUG: 201103
FEATURE: 118184
FEATURE: 156723
FEATURE: 177441
FEATURE: 182897
FEATURE: 193882
GUI:

svn path=/trunk/KDE/kdebase/workspace/; revision=1022861
2009-09-13 11:36:45 +00:00
Lucas Murray
da37b1f16d Don't const effect proxies.
svn path=/trunk/KDE/kdebase/workspace/; revision=1018656
2009-09-02 02:30:22 +00:00
Laurent Montel
3ce5dd0ffc Fix includes
svn path=/trunk/KDE/kdebase/workspace/; revision=1018077
2009-09-01 07:05:48 +00:00
Martin Gräßlin
6a58eb589d Add fadeout to closed windows in present windows effect. During fadeout other windows are moved to a better possible position.
BUG: 200084

svn path=/trunk/KDE/kdebase/workspace/; revision=996370
2009-07-14 09:06:37 +00:00
Lucas Murray
4fe4c732c0 Fix present windows alt+tab behaviour.
BUG: 198711

svn path=/trunk/KDE/kdebase/workspace/; revision=995383
2009-07-12 15:24:58 +00:00
Martin Gräßlin
ae0bac5c42 New mode for present windows effect: selecting all windows of same class as active window.
svn path=/trunk/KDE/kdebase/workspace/; revision=989722
2009-06-30 19:11:02 +00:00
Martin Gräßlin
a26c5b1225 Configurable mouse actions in present windows for clicking a window and desktop.
It's possible to activate a window, exit without activating, bring window to current desktop, send window on all desktops, mimize the window and close the window.
Clicking desktop allows to activate selected window, exit without activating, show the desktop (minimize all apps) and of course do nothing.
FEATURE: 163116

svn path=/trunk/KDE/kdebase/workspace/; revision=988788
2009-06-28 17:17:29 +00:00
Martin Gräßlin
fcbd01779a Add support for activating present windows via XAtoms.
Present windows can be activated for all windows of a desktop by setting the atom _KDE_PRESENT_WINDOWS_DESKTOP to the number of desktop or -1 for all desktops.
Another atom _KDE_PRESENT_WINDOWS_GROUP can be used to activate present windows on a group of windows (e.g. tasks applet).
When present windows is deactivated the property on the manager window will be deleted.

svn path=/trunk/KDE/kdebase/workspace/; revision=988110
2009-06-27 10:21:49 +00:00
Thomas Lübking
fbedac8cad BUG: 195518
BUG: 182425
BUG: 181898


svn path=/trunk/KDE/kdebase/workspace/; revision=978605
2009-06-07 17:25:16 +00:00
Martin Gräßlin
f7199eac7b When a shader is bound pass correct values for texture height, texture width and opacity for text frame and icon frame from present windows to the shader.
This renders the texture correctly, although invert effect only inverts the text and not the background. *shrug*

svn path=/trunk/KDE/kdebase/workspace/; revision=962234
2009-05-01 20:41:38 +00:00
Martin Gräßlin
69b8e33fce Check for the global shortcut in the effects so that the shortcut actually toggles the effect. This is a workaround needed because the keyboard grab disables the global shortcut.
FEATURE: 156155

svn path=/trunk/KDE/kdebase/workspace/; revision=946787
2009-03-30 11:27:57 +00:00
Martin Gräßlin
92484573f2 Effects can be activated at more than one electric border.
FEATURE: 180548

svn path=/trunk/KDE/kdebase/workspace/; revision=946404
2009-03-29 12:57:20 +00:00
Lucas Murray
6d57716d53 Minor memory leak patch to present windows.
svn path=/trunk/KDE/kdebase/workspace/; revision=936614
2009-03-08 05:07:42 +00:00
Lucas Murray
27187f2c15 Correctly handle windows that were closed but not yet deleted when the
present windows desktop effect is activated.
CCBUG: 185127
CCBUG: 185239
BUG: 185856

svn path=/trunk/KDE/kdebase/workspace/; revision=934022
2009-03-02 07:48:56 +00:00
Lucas Murray
e0faab0e96 Added debug asserts to present windows. This will hopefully cause KWin
to crash instead of producing black screens making it easier to find the
cause. For the people who can reproduce existing crashes please resubmit
their backtraces with this change applied.
CCBUG: 185127
CCBUG: 185239

svn path=/trunk/KDE/kdebase/workspace/; revision=933187
2009-02-28 10:18:46 +00:00
Lucas Murray
d5ef2a7a87 Prevent present windows from crashing if the highlighted window from the
previous activation is closed and the effect is activated a second time.
BUG: 179537

svn path=/trunk/KDE/kdebase/workspace/; revision=933171
2009-02-28 09:21:54 +00:00
Lucas Murray
d4f16a8dca Why doesn't my system crash when deleting uninitialized data? In
unrelated news the fade effect is broken again... This time it prevents
windows from ever being deleted. This commit message wins the "most
unrelated" award.
BUG: 185239

svn path=/trunk/KDE/kdebase/workspace/; revision=930448
2009-02-23 14:24:20 +00:00
Lucas Murray
be268c1f4c SVN_SILENT Fix crash in present windows.
BUG: 185239

svn path=/trunk/KDE/kdebase/workspace/; revision=930007
2009-02-22 14:51:38 +00:00
Lucas Murray
1e91a66fd2 Added support for unstyled and frameless EffectFrames. Converted all
effects that display text or boxes to use the class. Minor speed
increase in XRender mode for those effects and a massive increase in
OpenGL mode (Double framerate in present windows in my case).

svn path=/trunk/KDE/kdebase/workspace/; revision=929951
2009-02-22 13:04:16 +00:00
Lucas Murray
e03748fba7 Added EffectFrame, a helper class that creates, manages and caches a
Plasma frame object. There are two ways to use this class: The first is
in "static" mode which gives the frame a set geometry and will not
change, the second is an automatic mode that creates the smallest
possible frame around the specified contents. Contents can either be
normal text and/or a QPixmap, useful for displaying the caption and icon
of the currently highlighed window.
Known bugs:
 - Does not detect Plasma theme changes, known to be in the Plasma
   library.
 - Slight graphical glitches, known to be in Qt 4.5.0 RC1.
Untested:
 - What happens when there is no Plasma theme installed.

svn path=/trunk/KDE/kdebase/workspace/; revision=929324
2009-02-21 04:53:13 +00:00
Lucas Murray
13c2f21e9d Added EffectWindow::acceptsFocus(). Prevent present windows from
displaying windows that cannot be focused anyway (Such as conky).

svn path=/trunk/KDE/kdebase/workspace/; revision=923091
2009-02-08 08:45:21 +00:00
Lucas Murray
81ffa5aec9 Raise electric border windows when an effect mouse input window is
created to allow effects to be toggled by active screen edges.

svn path=/trunk/KDE/kdebase/workspace/; revision=922121
2009-02-06 14:21:20 +00:00
Lucas Murray
a1c82cd52b Added support for inter-effect communication through the use of proxy
classes. Example code has been added to present windows and desktop
grid, if this code is not to be used by KDE 4.3 it should be removed and
added to a test effect instead.

svn path=/trunk/KDE/kdebase/workspace/; revision=922039
2009-02-06 10:15:06 +00:00
Lucas Murray
846496d2c1 Cleaned up the effects/ directory by moving each individual effect into
its own directory, cleaned up the effect config macros and renamed
"MakeTransparent" to "Translucency" so that it matches its visible name.

svn path=/trunk/KDE/kdebase/workspace/; revision=921749
2009-02-05 15:35:38 +00:00
Renamed from effects/presentwindows.cpp (Browse further)