Rivo Laks
da0450f67f
Make loadEffect() return bool
...
svn path=/trunk/KDE/kdebase/workspace/; revision=690381
2007-07-20 21:13:10 +00:00
Luboš Luňák
96aba51960
Add a helper to turn on transparency in pre-paint calls.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=689910
2007-07-19 13:32:46 +00:00
Luboš Luňák
5faa397849
Vertex redesign - redo the way windows are split into smaller parts
...
for use in effects (and not only). Now a list of window quads (=window areas)
is created at the beginning of the paint pass, prepaint calls can modify
the split itself (i.e. divide it into more parts). The actual paint calls
can then modify these quads (i.e. transform their geometry). This will allow
better control of how the split is done and also allow painting e.g. only
the decoration differently. Still work in progress, but it works.
Also pass data to prepaint functions in a struct, as there is
already quite a number of them.
svn path=/trunk/KDE/kdebase/workspace/; revision=684893
2007-07-07 14:01:32 +00:00
David Faure
407812ff6f
Next patch from Christian Spiel, ++it instead of it++
...
svn path=/trunk/KDE/kdebase/workspace/; revision=684303
2007-07-06 13:39:03 +00:00
Rivo Laks
6c8b18f379
Add support for effect ordering.
...
Effects can now have e.g. X-Ordering=10 field in their .desktop file. The bigger the number,
the later the effect comes.
svn path=/trunk/KDE/kdebase/workspace/; revision=684272
2007-07-06 12:38:41 +00:00
Philip Falkner
c2ff6a4d7a
Make sure to unbind the texture in tfp_mode when the underlying pixmap
...
is discarded. Windows that have previously been mapped and unmapped now
update properly when mapped again.
svn path=/trunk/KDE/kdebase/workspace/; revision=683977
2007-07-05 19:59:55 +00:00
Matthias Kretz
cbfe1bd3a8
adapt to KPluginInfo API change
...
svn path=/trunk/KDE/kdebase/workspace/; revision=680026
2007-06-25 10:03:40 +00:00
Rivo Laks
e3d45c99f0
Add reloadEffect() and isEffectLoaded() and use them
...
svn path=/trunk/KDE/kdebase/workspace/; revision=669433
2007-05-29 11:42:47 +00:00
Rivo Laks
44b293211c
Options now longer provides list of effects to be loaded.
...
Instead, EffectsHandler itself loads the list of enabled effects (saved by the effects selector widget),
also making use of their EnabledByDefault property, so if you haven't touched the config, you'll
automatically get default effects.
svn path=/trunk/KDE/kdebase/workspace/; revision=669036
2007-05-28 11:23:00 +00:00
Rivo Laks
2ace94d3c8
Move all .desktop files of effects to $SERVICES_DIR/kwin and use ksycoca to e.g. get list of available effects.
...
As effect's full internal name is used when looking up the effect, you now need to provide the full name
(e.g. kwin4_effect_blur instead of just blur) when loading effects via dcop.
svn path=/trunk/KDE/kdebase/workspace/; revision=669032
2007-05-28 11:12:20 +00:00
Luboš Luňák
278e721494
Support for keeping a window temporarily at the very top,
...
desktop grid effect raises the window being moved this way.
svn path=/trunk/KDE/kdebase/workspace/; revision=667944
2007-05-24 14:41:56 +00:00
Christian Ehrlicher
e34294972a
fix for KLibrary changes
...
svn path=/trunk/KDE/kdebase/workspace/; revision=664745
2007-05-14 19:46:21 +00:00
Luboš Luňák
d1b6aaacdf
Avoid crashes during shutdown.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=662929
2007-05-09 16:10:49 +00:00
Luboš Luňák
8d9f931cfd
Build properly without OpenGL/XRender.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=662052
2007-05-07 11:46:01 +00:00
Harri Porten
1768b04b53
compile without Xfixes extension
...
svn path=/trunk/KDE/kdebase/workspace/; revision=661762
2007-05-06 14:38:28 +00:00
Luboš Luňák
f52b8e48cd
branches/work/kwin_composite becomes new trunk kwin.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=659202
2007-04-29 17:35:43 +00:00
Luboš Luňák
2b7e1f4993
Remove kwin, kwin_composite will become new trunk kwin, missing merges
...
from trunk will be merged in.
svn path=/trunk/KDE/kdebase/workspace/; revision=659200
2007-04-29 17:34:49 +00:00
Rivo Laks
9342f6902c
Add EffectWindow::isPaintingEnabled() to check whether painting of that window is enabled (surprise!)
...
svn path=/branches/work/kwin_composite/; revision=658747
2007-04-28 12:21:14 +00:00
Rivo Laks
868719ed65
Port ExplosionEffect to plugin system
...
svn path=/branches/work/kwin_composite/; revision=656456
2007-04-21 12:57:15 +00:00
Luboš Luňák
f43b53ef7d
Trigger TrackMouseEffect using Ctrl+Meta rather than mouse buttons.
...
svn path=/branches/work/kwin_composite/; revision=656455
2007-04-21 12:50:02 +00:00
Rivo Laks
7250a8edcd
Support having multiple rendertarget-using effects active at once
...
svn path=/branches/work/kwin_composite/; revision=656210
2007-04-20 15:53:30 +00:00
Luboš Luňák
438b8ce045
toggleEffect() DBUS call
...
svn path=/branches/work/kwin_composite/; revision=655369
2007-04-18 06:57:49 +00:00
Luboš Luňák
d6d91cf88a
Add the ability to move windows around in DesktopGridEffect.
...
svn path=/branches/work/kwin_composite/; revision=654796
2007-04-16 22:47:51 +00:00
Luboš Luňák
40002ec325
Allow changing the desktop in DesktopGridEffect by clicking.
...
svn path=/branches/work/kwin_composite/; revision=654680
2007-04-16 19:09:21 +00:00
Luboš Luňák
970f4c4d60
Get window class.
...
svn path=/branches/work/kwin_composite/; revision=654513
2007-04-16 11:48:14 +00:00
Luboš Luňák
76cb5de294
Support for effects taking control of the keyboard. Needs recent kdeui change
...
to work properly.
svn path=/branches/work/kwin_composite/; revision=654259
2007-04-15 16:31:13 +00:00
Luboš Luňák
f5fa11222a
Effects that can keep thumbnails of selected windows permanently
...
visible at the side.
svn path=/branches/work/kwin_composite/; revision=654185
2007-04-15 10:56:17 +00:00
Luboš Luňák
10bfb82e8c
Make PresentWindows effect work properly even with idle paint passes
...
(i.e. trigger next repaint properly and react on mouse events).
svn path=/branches/work/kwin_composite/; revision=653921
2007-04-14 15:33:12 +00:00
Luboš Luňák
15c8a4220e
Fix and re-enable optimized cursorPos().
...
svn path=/branches/work/kwin_composite/; revision=653895
2007-04-14 14:15:43 +00:00
Luboš Luňák
5fc1d4c480
Tabbox effect also converted to plugins.
...
svn path=/branches/work/kwin_composite/; revision=653014
2007-04-12 14:12:34 +00:00
Luboš Luňák
2b82c88874
The rest ported to plugins, BoxSwich being the only exception.
...
svn path=/branches/work/kwin_composite/; revision=652991
2007-04-12 13:12:37 +00:00
Luboš Luňák
8e25dd6bfa
Port to plugins.
...
svn path=/branches/work/kwin_composite/; revision=652956
2007-04-12 11:55:07 +00:00
Luboš Luňák
ca5451fef0
Convert WavyWindows to plugins (and move Vertex class to the effects lib).
...
svn path=/branches/work/kwin_composite/; revision=652628
2007-04-11 15:46:46 +00:00
Rivo Laks
02032f8587
Move most (all?) internal methods from EffectsHandler to EffectsHandlerImpl.
...
The ugly side effect of this is that there are tons of static_casts in the code now... maybe it
would be better to add effectImpl() convenience method and use that?
svn path=/branches/work/kwin_composite/; revision=652348
2007-04-10 18:47:13 +00:00
Luboš Luňák
58fdb149a8
Convert ShowFps effect to plugins.
...
svn path=/branches/work/kwin_composite/; revision=652275
2007-04-10 15:38:36 +00:00
Luboš Luňák
d2dbc77323
Add support for dimming of inactive windows (accessibility).
...
FEATURE: 46226
svn path=/branches/work/kwin_composite/; revision=652255
2007-04-10 14:48:55 +00:00
Rivo Laks
0353f3376e
Make effects actual plugins, so it's possible to load them on runtime.
...
There's also a kwineffects library now, containing the effects API, which makes it possible to write
third-party effects.
API isn't complete yet and for now just two effects have been converted but I'm working on it :-)
svn path=/branches/work/kwin_composite/; revision=652226
2007-04-10 13:02:08 +00:00
Luboš Luňák
e3b865cd5f
namespace KWinInternal -> KWin - shorter typing of names in gdb, yay
...
svn path=/branches/work/kwin_composite/; revision=650770
2007-04-05 12:07:35 +00:00
Luboš Luňák
35bbf89aed
Add support for activating features using window borders/corners.
...
Enabled it for PresentWindowsEffect for now.
svn path=/branches/work/kwin_composite/; revision=650532
2007-04-04 19:08:03 +00:00
Rivo Laks
1f167d8d15
Add EffectWindow::isDeleted() method.
...
Don't draw shadow for deleted windows.
svn path=/branches/work/kwin_composite/; revision=648149
2007-03-30 16:12:07 +00:00
Rivo Laks
56a2a995d1
Add an effect to render live thumbnails of windows next to their taskbar entries when the cursor is
...
above the corresponding taskbar entry.
It's a "demo" effect because in the future the taskbar itself (or any other application) should be able to
request a window's thumbnail to be rendered at a specified position. So once we'll support such
functionality, the taskbar will replace this effect.
svn path=/branches/work/kwin_composite/; revision=647144
2007-03-27 14:26:30 +00:00
Luboš Luňák
8b5b40e4e8
Shadows. Right not it's only flat black rectangle, but otherwise
...
everything should work.
svn path=/branches/work/kwin_composite/; revision=646315
2007-03-25 10:48:07 +00:00
Luboš Luňák
d09096a784
The window-burning-down effect (gee), except that there's no actual
...
flame, since I'm lame at graphics. Should be easy to add anyway.
Besides the apparent unusefulness this effect should be for testing
some new changes to the core.
svn path=/branches/work/kwin_composite/; revision=645111
2007-03-21 17:35:48 +00:00
Rivo Laks
aae967c5f9
Make your windows explode!
...
Add ExplosionEffect which makes the windows blow up into small pieces when they're closed.
In the future this could be used only when user kills (an unresponsive) window.
svn path=/branches/work/kwin_composite/; revision=643135
2007-03-16 13:02:47 +00:00
Luboš Luňák
5cabf743ae
The official excuse for this effect is that I wanted to try
...
drawing a window several times.
svn path=/branches/work/kwin_composite/; revision=642577
2007-03-14 18:21:11 +00:00
Luboš Luňák
d4a58f4152
QMap -> QHash
...
svn path=/branches/work/kwin_composite/; revision=642532
2007-03-14 16:50:19 +00:00
Luboš Luňák
de8f39accf
Hmm, I think I now understand this vertices stuff. Added a silly
...
effect that destroys a window by spliting it into many small pieces.
svn path=/branches/work/kwin_composite/; revision=642152
2007-03-13 13:42:01 +00:00
Philip Falkner
6f122ecd3e
Add BoxSwitch effect: a tabbox replacement. It's still rough, but works reasonably well.
...
svn path=/branches/work/kwin_composite/; revision=640630
2007-03-08 16:52:09 +00:00
Philip Falkner
ce89ed0716
Allow effects to replace the tabbox.
...
svn path=/branches/work/kwin_composite/; revision=640628
2007-03-08 16:49:44 +00:00
Luboš Luňák
f6ad1881e1
Support for window thumbnails.
...
svn path=/branches/work/kwin_composite/; revision=640344
2007-03-07 17:50:33 +00:00
Luboš Luňák
5f02d68fb9
FadeIn/FadeOut effects are succeeded by Fade.
...
CCMAIL: philip.falkner@gmail.com
svn path=/branches/work/kwin_composite/; revision=636634
2007-02-23 16:34:57 +00:00
Luboš Luňák
0498cd7785
Add VideoRecordEffect for saving video captures.
...
Requires external lib to compile, see the videorecord.cpp .
svn path=/branches/work/kwin_composite/; revision=636625
2007-02-23 16:20:22 +00:00
Philip Falkner
8299541652
Add build checks for XComposite, XDamage, XRender, OpenGL, and XShm.
...
KWin should now build and run with/without any or all of the above.
svn path=/branches/work/kwin_composite/; revision=633387
2007-02-13 23:28:36 +00:00
Philip Falkner
a71753e5cd
Change effects->windowOpacityChanged to also pass the old opacity; thanks Lubos!
...
Clean up FadeEffect a bit, and make it replace FadeOut in the default effects list.
svn path=/branches/work/kwin_composite/; revision=633032
2007-02-12 23:14:50 +00:00
Philip Falkner
2fdc57ccd6
Fade effect. Unified version of FadeIn and FadeOut; also fades on window opacity changes.
...
The fade_in_speed and fade_out_speed settings work like they did in kompmgr, but aren't currently configurable.
svn path=/branches/work/kwin_composite/; revision=632583
2007-02-11 17:41:21 +00:00
Philip Falkner
8d0f15e655
Hook up windowOpacityChanged for effects. Note that this only affects when the window opacity atom is changed; if an effect alters data.opacity in WindowPaintData, no notification will happen.
...
svn path=/branches/work/kwin_composite/; revision=632582
2007-02-11 17:38:56 +00:00
Philip Falkner
c16656d66d
Rework how window painting is disabled; now effects can indicate reasons they want particular windows painted or not.
...
This solves a few problems, but may need revisiting in the future.
svn path=/branches/work/kwin_composite/; revision=632581
2007-02-11 17:36:32 +00:00
Philip Falkner
bcfa67e91a
Fix DesktopChangeSlide effect creation.
...
svn path=/branches/work/kwin_composite/; revision=631344
2007-02-07 19:21:33 +00:00
Luboš Luňák
00136f014f
Configurable effects loading by Cedric Borgese.
...
svn path=/branches/work/kwin_composite/; revision=630276
2007-02-04 22:19:17 +00:00
Luboš Luňák
63a97b7d3d
Add DesktopChangeSlideEffect, an effect that on virtual desktop
...
change slides the old desktop out and the new one in. Should not
be really technically different from the cube.
svn path=/branches/work/kwin_composite/; revision=629163
2007-02-01 17:20:48 +00:00
Rivo Laks
445ab8ca7a
Add MinimizeAnimation effect which makes the window move onto/from its taskbar
...
entry when minimized/restored
svn path=/branches/work/kwin_composite/; revision=627003
2007-01-25 11:48:07 +00:00
Luboš Luňák
93de3d41d0
Add WavyWindowsEffect.
...
svn path=/branches/work/kwin_composite/; revision=626899
2007-01-24 21:46:43 +00:00
Luboš Luňák
0ae5a772e7
Add EffectWindow as a window representation for effects,
...
to hide the change from Client/Unmanaged and eventually also
act as the only API available to effects.
svn path=/branches/work/kwin_composite/; revision=626360
2007-01-22 22:57:22 +00:00
Luboš Luňák
77f803a563
Instead of the somewhat fragile way of trying to clean up Client/Unmanaged
...
instances and keeping them around after the window is closed, create
class Deleted as a representation of a closed window.
svn path=/branches/work/kwin_composite/; revision=626356
2007-01-22 22:51:30 +00:00
Luboš Luňák
ff6f889ffc
Add support for showing effects for windows which have already been deleted.
...
Add a fade-out effect.
svn path=/branches/work/kwin_composite/; revision=623872
2007-01-15 18:03:04 +00:00
Luboš Luňák
fd3809e453
Add PresentWindowsEffect.
...
svn path=/branches/work/kwin_composite/; revision=623377
2007-01-14 17:05:25 +00:00
Philip Falkner
ee9e4ad715
Allow effects on window minimize and unminimize.
...
svn path=/branches/work/kwin_composite/; revision=622778
2007-01-12 23:23:41 +00:00
Luboš Luňák
1765551277
Support for "input windows" that let effects intercept mouse events
...
when they e.g. want to let the user select from window thumbnails.
svn path=/branches/work/kwin_composite/; revision=620305
2007-01-05 16:45:56 +00:00
Luboš Luňák
f93df78a79
Disable the zoom effect.
...
svn path=/branches/work/kwin_composite/; revision=610147
2006-12-03 13:48:09 +00:00
Luboš Luňák
6bf5d12108
Zoom effect, i.e. magnifying glass. The zoom is hardcoded
...
for now.
svn path=/branches/work/kwin_composite/; revision=610134
2006-12-03 13:36:40 +00:00
Luboš Luňák
0e53720687
Finish the showfps effect, including adding some configuration
...
and making it work even with XRender. I think it shows that
making non-trivial effects for both OpenGL and XRender
would be a) quite possible b) quite pain.
svn path=/branches/work/kwin_composite/; revision=606271
2006-11-19 20:25:04 +00:00
Luboš Luňák
4efa523375
A simple attempt at a showfps effect. OpenGL-only, only lame graphs,
...
still many TODO's.
svn path=/branches/work/kwin_composite/; revision=605497
2006-11-16 22:46:14 +00:00
Luboš Luňák
aeafa63a94
Move some OpenGL code to glutils.* .
...
Add support for changing window brightness.
Add DialogParent effect that makes windows that are unaccessible because
of modal dialogs darker.
Patch by Rivo Laks.
svn path=/branches/work/kwin_composite/; revision=603384
2006-11-08 19:10:07 +00:00
Luboš Luňák
85bc4b5ac7
Disable the howto effect.
...
svn path=/branches/work/kwin_composite/; revision=600554
2006-10-30 22:54:51 +00:00
Luboš Luňák
0f03921271
Add a commented howto effect.
...
svn path=/branches/work/kwin_composite/; revision=600553
2006-10-30 22:49:59 +00:00
Luboš Luňák
5f03c77514
Move effects to their own directory.
...
svn path=/branches/work/kwin_composite/; revision=600157
2006-10-29 19:08:09 +00:00
Luboš Luňák
3f9b754ee7
Add post-painting pass to be used for triggering
...
repaints with animations.
svn path=/branches/work/kwin_composite/; revision=600156
2006-10-29 19:07:10 +00:00
Luboš Luňák
6b41c062c8
Remove the WrapperEffect hack, it's ugly.
...
svn path=/branches/work/kwin_composite/; revision=600155
2006-10-29 19:06:32 +00:00
Luboš Luňák
3f46d36bb9
Add convenience functions for damaging full area.
...
svn path=/branches/work/kwin_composite/; revision=598834
2006-10-24 19:28:17 +00:00
Luboš Luňák
10b31e7222
Support for animations, still some todo's pending.
...
svn path=/branches/work/kwin_composite/; revision=598831
2006-10-24 19:17:48 +00:00
Luboš Luňák
dec6dc3acd
Disable the window transforming effects.
...
svn path=/branches/work/kwin_composite/; revision=597998
2006-10-22 10:16:54 +00:00
Luboš Luňák
1d7b94acfc
Basic window transformations.
...
svn path=/branches/work/kwin_composite/; revision=597997
2006-10-22 10:15:19 +00:00
Luboš Luňák
74ab9819de
Disable the screen transforming effect.
...
svn path=/branches/work/kwin_composite/; revision=597817
2006-10-21 18:08:58 +00:00
Luboš Luňák
779597a648
Basic screen transformation.
...
svn path=/branches/work/kwin_composite/; revision=597815
2006-10-21 18:07:00 +00:00
Luboš Luňák
caed149f40
Add pre-paint passes that will allow finding out how the painting will be done.
...
svn path=/branches/work/kwin_composite/; revision=596109
2006-10-16 18:46:07 +00:00
Luboš Luňák
338adc9ad5
Throw away old code for effects and start anew.
...
svn path=/branches/work/kwin_composite/; revision=595965
2006-10-16 10:12:48 +00:00
Luboš Luňák
b168c35384
Don't cache window pixmap, it's used only after it
...
changes.
svn path=/branches/work/kwin_composite/; revision=593453
2006-10-07 21:20:23 +00:00
Luboš Luňák
06203d0652
Don't bother with trying to transform window damage,
...
when there are any transformations, it should simply
repaint everything (todo).
svn path=/branches/work/kwin_composite/; revision=593450
2006-10-07 21:18:36 +00:00
Luboš Luňák
2c892791e4
No workspace shifting.
...
svn path=/branches/work/kwin_composite/; revision=561967
2006-07-13 18:24:51 +00:00
Luboš Luňák
e24815411a
Keep damage info separately for every window.
...
svn path=/branches/work/kwin_composite/; revision=561966
2006-07-13 18:17:49 +00:00
Luboš Luňák
03fedc56dd
No effects when not compositing.
...
svn path=/branches/work/kwin_composite/; revision=560594
2006-07-10 18:34:57 +00:00
Luboš Luňák
28e3726f2e
Basic transformations on the whole workspace.
...
svn path=/branches/work/kwin_composite/; revision=559204
2006-07-06 19:02:14 +00:00
Luboš Luňák
e6c23e4cd3
Ok, I give up, whoever wants more complicated transformations than just
...
translation are welcome to implement it themselves. I'm no graphics guy
after all and this seems to be far beyond me.
svn path=/branches/work/kwin_composite/; revision=559182
2006-07-06 18:22:01 +00:00
Luboš Luňák
a9cec042cb
Fix matrix multiplication, add transform function.
...
svn path=/branches/work/kwin_composite/; revision=559061
2006-07-06 14:20:03 +00:00
Luboš Luňák
0516e1e73b
Add support for translation and add two "plugins" that
...
make windows transparent or shake them while moving.
svn path=/branches/work/kwin_composite/; revision=559013
2006-07-06 13:17:44 +00:00
Luboš Luňák
391bb6b28d
Support for effects that affect opacity.
...
svn path=/branches/work/kwin_composite/; revision=558921
2006-07-06 09:55:10 +00:00
Luboš Luňák
7d67cf42c4
Data like transf. matrix that the effects can affect.
...
svn path=/branches/work/kwin_composite/; revision=558454
2006-07-05 12:56:04 +00:00
Luboš Luňák
4f12c1e606
Some first attempt at effects interface.
...
svn path=/branches/work/kwin_composite/; revision=558191
2006-07-04 20:51:01 +00:00