Commit graph

3304 commits

Author SHA1 Message Date
Rivo Laks
ea6f0ae502 - Effects' config module should link to kwineffects and shouldn't link to kutils.
- Make use of the two EffectHandler helper methods: effect config modules now notify KWin that
  corresponding effect should be reloaded when it's config is changed.

svn path=/trunk/KDE/kdebase/workspace/; revision=669436
2007-05-29 11:48:10 +00:00
Script Kiddy
86c92d7985 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=669344

The following changes were in SVN, but were removed from git:

M	wallpapers/All-Good-People-1.jpg.desktop
M	wallpapers/Chicken-Songs-2.jpg.desktop
M	wallpapers/No-Ones-Laughing-3.jpg.desktop
M	wallpapers/Time-For-Lunch-2.jpg.desktop
M	wallpapers/Totally-New-Product-1.jpg.desktop
M	wallpapers/Won-Ton-Soup-3.jpg.desktop
M	wallpapers/alta-badia.jpg.desktop
M	wallpapers/andes-venezolanos.svgz.desktop
M	wallpapers/blue-bend.jpg.desktop
M	wallpapers/celtic.svgz.desktop
M	wallpapers/default_blue.jpg.desktop
M	wallpapers/default_gears.jpg.desktop
M	wallpapers/floating-leaves.jpg.desktop
M	wallpapers/globe.svgz.desktop
M	wallpapers/here-gear.svgz.desktop
M	wallpapers/konqui.svgz.desktop
M	wallpapers/lineart.svgz.desktop
M	wallpapers/moon.svgz.desktop
M	wallpapers/seaofconero.jpg.desktop
M	wallpapers/soft-green.jpg.desktop
M	wallpapers/sunshine-after-the-rain.jpg.desktop
M	wallpapers/triplegears.jpg.desktop
2007-05-29 05:15:16 +00:00
Rivo Laks
9334e70862 Oops, add kwineffect.desktop
svn path=/trunk/KDE/kdebase/workspace/; revision=669082
2007-05-28 13:07:52 +00:00
Rivo Laks
c22b4809a5 Add working config modules for PresentWindows and Shadow effects.
You can configure shadow's offset and opacity and presentwindow's mouse activation areas
  (e.g. activate when mouse it at top-right corner).

svn path=/trunk/KDE/kdebase/workspace/; revision=669040
2007-05-28 11:34:12 +00:00
Rivo Laks
041673bf86 Effect's name in KWIN_EFFECT*() macros must now match effect's internal name in .desktop file,
without kwin4_effect_ prefix, so change the name in those macros to lowercase.
Some modifications to the macros themselves as well.

Effect loading via dcop might work again now.

svn path=/trunk/KDE/kdebase/workspace/; revision=669033
2007-05-28 11:16:18 +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
Script Kiddy
6118496212 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=668356
2007-05-26 05:05:31 +00:00
Rivo Laks
19520d39b5 Add comments to some (more important) effects
svn path=/trunk/KDE/kdebase/workspace/; revision=668230
2007-05-25 15:06:18 +00:00
Rivo Laks
a62a16303d Fix effect's name
svn path=/trunk/KDE/kdebase/workspace/; revision=668228
2007-05-25 15:04:40 +00:00
Rivo Laks
caec542d7a Add KPluginInfo fields to all effect .desktop files.
This includes author, effect's internal name, licence, version, category, etc

svn path=/trunk/KDE/kdebase/workspace/; revision=668220
2007-05-25 14:17:52 +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
Rivo Laks
d6c8a0371d * Rearrange CMakeLists.txt to be (IMHO) a bit more logical.
* Move drunken, shakymove and wavywindows from builtins to tests. Probably they should also be
  prefixed with test or demo, but I'm not bothered enough to do it myself yet.

svn path=/trunk/KDE/kdebase/workspace/; revision=667378
2007-05-22 16:58:10 +00:00
Luboš Luňák
c4ed59b462 There is a reasonable rounding function after all.
svn path=/trunk/KDE/kdebase/workspace/; revision=667352
2007-05-22 15:48:39 +00:00
Luboš Luňák
b4e9060ca7 Sigh ... lround() -> int( round()).
BUG: 145780


svn path=/trunk/KDE/kdebase/workspace/; revision=667287
2007-05-22 12:11:45 +00:00
Script Kiddy
44349d3369 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=666507
2007-05-20 05:13:09 +00:00
Script Kiddy
d5090d37a7 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=664483
2007-05-14 05:08:17 +00:00
Thorsten Roeder
0666147473 some krazy fixes
svn path=/trunk/KDE/kdebase/workspace/; revision=664331
2007-05-13 17:47:20 +00:00
Script Kiddy
66b63ee26d SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=663384
2007-05-11 05:18:10 +00:00
Thorsten Roeder
97b328de46 SVN_SILENT: some krazy spelling fixes mainly in comments
svn path=/trunk/KDE/kdebase/runtime/solid/control/solid/; revision=662694
2007-05-08 22:05:30 +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
Script Kiddy
eeaa3c0568 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=661951
2007-05-07 05:10:45 +00:00
David Faure
38099ef7e5 Major config.h cleanup, moved much stuff to config-X11.h and to config-fish.h
svn path=/trunk/KDE/kdebase/workspace/; revision=661060
2007-05-04 13:51:35 +00:00
Script Kiddy
a22c51f822 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/workspace/; revision=660909
2007-05-04 05:03:42 +00:00
Pino Toscano
14d0ee83a4 extra ';'
svn path=/trunk/KDE/kdebase/workspace/; revision=659235
2007-04-29 19:03:40 +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
91f795922d Make Liquid effect work without NPOT textures as well.
svn path=/branches/work/kwin_composite/; revision=659161
2007-04-29 15:53:56 +00:00
Rivo Laks
49a56dc905 Make blur effect work even when NPOT textures are not supported by using a larger power-of-two
texture. It wastes some memory but at least it works.

svn path=/branches/work/kwin_composite/; revision=659159
2007-04-29 15:42:19 +00:00
Rivo Laks
a94aa904b0 Well, actually GLRenderTarget doesn't require NPOT textures (it works with rectangle textures as well).
That also means that those effects which do require NPOT have to check for it themselves.

svn path=/branches/work/kwin_composite/; revision=659155
2007-04-29 15:39:33 +00:00
Rivo Laks
72f2d412c1 Add blur effect.
Blur effects blurs out background of translucent windows, thus improving e.g. readability of text in
  such windows.
I'll send a mail with couple of screenshots and more details to kwin list soon.

svn path=/branches/work/kwin_composite/; revision=658817
2007-04-28 15:13:28 +00:00
Rivo Laks
f00d1745ed Add static GLRenderTarget::supported() and make effects use it instead of checking for FBO extension
themselves.
Fix memory leak in Test_FBO effect.

svn path=/branches/work/kwin_composite/; revision=658804
2007-04-28 14:38:06 +00:00
Rivo Laks
24c8663923 Add GLShader dtor (fixes memory leak).
Also fix multiple memory leaks in effects.

svn path=/branches/work/kwin_composite/; revision=658761
2007-04-28 13:19:36 +00:00
Rivo Laks
6e62dcb922 Add GLTexture::setWrapMode() call to set texture's OpenGL wrap mode.
Liquid demo effect now sets wrap mode to CLAMP to ensure that the texture won't wrap at edges
  of the screen, which would make other side of the screen visible there.

svn path=/branches/work/kwin_composite/; revision=658748
2007-04-28 12:25:54 +00:00
Luboš Luňák
56e5618f0e Round values, don't just truncate.
svn path=/branches/work/kwin_composite/; revision=656976
2007-04-22 21:22:05 +00:00
Luboš Luňák
98a7c3da6a Fix repaints.
svn path=/branches/work/kwin_composite/; revision=656793
2007-04-22 11:41:09 +00:00
Luboš Luňák
c7956a951a Repaint also frame.
svn path=/branches/work/kwin_composite/; revision=656786
2007-04-22 11:24:37 +00:00
Laurent Montel
67f6750ab3 Remove not necessary include
svn path=/trunk/KDE/kdebase/workspace/; revision=656776
2007-04-22 11:14:24 +00:00
Luboš Luňák
8005bb6db6 Limit the capturing region to the screen.
svn path=/branches/work/kwin_composite/; revision=656772
2007-04-22 10:52:55 +00:00
Luboš Luňák
bf29f2c3e1 Effect which can temporarily mark places on the screen.
svn path=/branches/work/kwin_composite/; revision=656547
2007-04-21 17:12:17 +00:00
Luboš Luňák
ffc75a2214 GLTexture::render(), to render to a given QRect
svn path=/branches/work/kwin_composite/; revision=656521
2007-04-21 16:12:03 +00:00
Luboš Luňák
cd98bc12d5 Shared implementation of rendering gl geometry.
svn path=/branches/work/kwin_composite/; revision=656516
2007-04-21 16:02:19 +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
Luboš Luňák
b849a760ef Fix painting of moved on-all-desktop windows.
svn path=/branches/work/kwin_composite/; revision=656444
2007-04-21 12:29:43 +00:00
Luboš Luňák
371dfdbede MMB toggles on-all-desktops.
svn path=/branches/work/kwin_composite/; revision=656437
2007-04-21 12:15:43 +00:00
Luboš Luňák
0040bb699b Better painting of moved window.
svn path=/branches/work/kwin_composite/; revision=656410
2007-04-21 10:26: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
Rivo Laks
e979de43fb Another demo effect which uses shader and render target to turn your screen into a liquid, wavy surface.
Soon we'll have more silly effects than Beryl/Compiz ;-)

svn path=/branches/work/kwin_composite/; revision=655575
2007-04-18 19:44:49 +00:00
Rivo Laks
e93ce53928 Oops
svn path=/branches/work/kwin_composite/; revision=655501
2007-04-18 15:45:34 +00:00
Rivo Laks
7a5415ecdb Add a demo/test effect for GLRenderTarget.
It renders a small rotating thumbnail of the scene in the middle of the screen.

svn path=/branches/work/kwin_composite/; revision=655498
2007-04-18 15:42:06 +00:00
Luboš Luňák
6a894c62c2 Properly initialize.
svn path=/branches/work/kwin_composite/; revision=654855
2007-04-17 06:01:53 +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
67fdfa03e7 Add effect that highlights the mouse when one
presses left and right mouse button. There needs to be
found a better way of activating this though :-/.


svn path=/branches/work/kwin_composite/; revision=654750
2007-04-16 21:15:15 +00:00
Luboš Luňák
18f86e79d4 Small cleanups.
svn path=/branches/work/kwin_composite/; revision=654707
2007-04-16 19:55:28 +00:00
Luboš Luňák
743c5da956 A silly effect that just shows a picture. Using
picture of Konqi is recommended :).


svn path=/branches/work/kwin_composite/; revision=654703
2007-04-16 19:52:21 +00:00
Rivo Laks
408cb3b28f Remove DesktopChangeSlide from the makefile as well
svn path=/branches/work/kwin_composite/; revision=654694
2007-04-16 19:38:20 +00:00
Luboš Luňák
09b5b47b1e Integrate DesktopChangeSlide into DesktopGrid, so that
they can co-exist without conflicting.


svn path=/branches/work/kwin_composite/; revision=654687
2007-04-16 19:30:48 +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
f8fd7b7ff1 Effect that shows all desktops in a grid.
svn path=/branches/work/kwin_composite/; revision=654642
2007-04-16 17:25:02 +00:00
Luboš Luňák
9268e7b27c Don't reset hover value.
svn path=/branches/work/kwin_composite/; revision=654366
2007-04-15 22:08:18 +00:00
Luboš Luňák
520f3e27ac Rearrange also when the number of presented windows changes.
svn path=/branches/work/kwin_composite/; revision=654365
2007-04-15 22:01:16 +00:00
Luboš Luňák
a1fa5c4206 No interpolating when there's no old position, just fade in.
svn path=/branches/work/kwin_composite/; revision=654363
2007-04-15 21:50:00 +00:00
Luboš Luňák
f8c84d4310 Don't disable desktop from painting.
svn path=/branches/work/kwin_composite/; revision=654361
2007-04-15 21:42:36 +00:00
Luboš Luňák
257ce3ad99 Find-as-you-type filtering of presented windows.
svn path=/branches/work/kwin_composite/; revision=654360
2007-04-15 21:42:01 +00:00
Luboš Luňák
795de6c6d6 Centered placement in slots.
svn path=/branches/work/kwin_composite/; revision=654291
2007-04-15 18:12:24 +00:00
Luboš Luňák
b30180ca26 Compute scale factor properly.
svn path=/branches/work/kwin_composite/; revision=654285
2007-04-15 17:59: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
894d08a522 When the number of presented windows changes, do the rearranging smoothly.
Also rearrange only if the size of the grid would change.


svn path=/branches/work/kwin_composite/; revision=654209
2007-04-15 13:25:44 +00:00
Luboš Luňák
b65e6affd9 Build the list of windows to present when activating the effect
and don't change this list later (I suppose newly turned up
windows would just disturb anyway). This will later also allow
filtering of the presented windows.


svn path=/branches/work/kwin_composite/; revision=654201
2007-04-15 12:38:09 +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
812dd7238e Arrange windows to regularly spaced slots, try to find the closest one.
svn path=/branches/work/kwin_composite/; revision=654184
2007-04-15 10:53:01 +00:00
Luboš Luňák
e18e701f7f LMB activates, others cancel.
svn path=/branches/work/kwin_composite/; revision=654154
2007-04-15 09:14:37 +00:00
Luboš Luňák
672c95e435 Work properly even with idle paint passes (react on mouse events).
svn path=/branches/work/kwin_composite/; revision=653927
2007-04-14 16:10:58 +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
2d89e4304e Magnifier glass - like Zoom, but only for a small part of the screen.
svn path=/branches/work/kwin_composite/; revision=653542
2007-04-13 15:19:12 +00:00
Luboš Luňák
6c971a4462 ZoomIn/ZoomOut/ActualSize actions.
svn path=/branches/work/kwin_composite/; revision=653520
2007-04-13 14:42:37 +00:00
Luboš Luňák
a2a8c39a27 Small fixes.
svn path=/branches/work/kwin_composite/; revision=653431
2007-04-13 10:08:18 +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
0b4f83fc90 The rest ported to plugins, BoxSwich being the only exception.
svn path=/branches/work/kwin_composite/; revision=652990
2007-04-12 13:12:11 +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
6bf23a5c48 Convert to plugins (and make it a test, since it's more or less useless).
svn path=/branches/work/kwin_composite/; revision=652928
2007-04-12 10:16:02 +00:00
Luboš Luňák
74e97a2c9b Convert to plugins.
svn path=/branches/work/kwin_composite/; revision=652631
2007-04-11 15:53:32 +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
Luboš Luňák
f285fe4af8 Properly depend on opengl and/or xrender.
svn path=/branches/work/kwin_composite/; revision=652619
2007-04-11 15:31:14 +00:00
Luboš Luňák
8973e88245 Convert zoom and videorecord to plugins.
svn path=/branches/work/kwin_composite/; revision=652616
2007-04-11 15:22:36 +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
04a3787213 Non-inline functions should be in .cpp .
svn path=/branches/work/kwin_composite/; revision=652257
2007-04-10 14:53:13 +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
76eae77b57 Position fixes.
svn path=/branches/work/kwin_composite/; revision=651101
2007-04-06 14:51:55 +00:00
Luboš Luňák
c38dc5e099 Change the DesktopChangeSlideEffect so that the new desktop doesn't
always slide in from the top but from the position where it is
according to the desktop layout.


svn path=/branches/work/kwin_composite/; revision=651083
2007-04-06 13:46:29 +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
Philip Falkner
efa28b23f5 Don't crash when activating a window on another desktop.
svn path=/branches/work/kwin_composite/; revision=648171
2007-03-30 17:15:48 +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
9027b501c8 Interpolate between brightness changes when highlighting window under cursor.
svn path=/branches/work/kwin_composite/; revision=648132
2007-03-30 15:35:19 +00:00
Rivo Laks
64051d3cf8 Honor window transformations when drawing the shadow.
This makes the shadow effect play nice with e.g. MinimizeAnimation or Expose

svn path=/branches/work/kwin_composite/; revision=647821
2007-03-29 15:52:20 +00:00
Philip Falkner
574e562906 Some updates to the tabbox.
Provide a pair of methods, setCurrentClient() and setCurrentDesktop(),
to allow effects to select items in the tabbox without activating them.

Insulate effects from having to know the order of desktops, with
currentDesktopList().  DesktopMode and DesktopListMode should be
effectively identical as far as how effects work.

Some changes to how the tabbox refcounting is done, should work a little
better.  Other small cosmetic changes.

Update BoxSwitchEffect.


svn path=/branches/work/kwin_composite/; revision=647594
2007-03-28 20:29:45 +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
Rivo Laks
295477c4ad Try to load the data in prePaintWindow() instead of paintWindow() if it's not loaded yet.
This way we won't request the window to be painted when loading fails or has failed.
Also remove 2 lines of obsolete code.

svn path=/branches/work/kwin_composite/; revision=647139
2007-03-27 14:15:41 +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
Philip Falkner
aa6d8eabc5 Add GLTexture class. This is a convenient wrapper around managing an OpenGL texture, as well as loading an image into it. Includes support for loading from QImage, QPixmap, and a file. Defaults to a GL_TEXTURE_2D target, and will scale image if necessary.
Also add SceneOpenGL::Texture class, based on GLTexture.  Optimised for SceneOpenGL::Window, this adds support for loading from an X Pixmap, as well as taking advantage of texture_from_pixmap/shm when available.  Automatically detects what texture target should be used, so be sure to enableUnnormalizedTexCoords() before painting.

Make SceneOpenGL::Window, BoxSwitchEffect, and ExplosionEffect use the new classes.

svn path=/branches/work/kwin_composite/; revision=645125
2007-03-21 18:14:09 +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
d74c23ff17 Ctrl+F11 now does Expose effect with all window, including those on other desktops.
The downside is that sometimes it crashes when you want to activate a window in Expose mode. It seems
  to be some kind of memory problem, but I can't figure out what/where exactly, so I'd appreciate if
  someone took a look at it.

svn path=/branches/work/kwin_composite/; revision=645067
2007-03-21 16:24:28 +00:00
Luboš Luňák
61f99cf2f0 Ok, I couldn't resist - make the fragments also spin.
svn path=/branches/work/kwin_composite/; revision=644987
2007-03-21 13:28:35 +00:00
Luboš Luňák
b75f3dfeb0 Make the effect look better by adding certain randomness.
svn path=/branches/work/kwin_composite/; revision=644640
2007-03-20 16:28:23 +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
Luboš Luňák
52afddcaeb Don't unref a deleted window more than once.
svn path=/branches/work/kwin_composite/; revision=642067
2007-03-13 09:49:44 +00:00
Philip Falkner
1dc9715e45 Show effect even when only one option is available, like the default tabbox does.
svn path=/branches/work/kwin_composite/; revision=641579
2007-03-11 21:19:44 +00:00
Philip Falkner
04e488b0a7 Add XRender support to BoxSwitch.
This includes icon support for XRender.

svn path=/branches/work/kwin_composite/; revision=640729
2007-03-08 22:12:41 +00:00
Philip Falkner
6af1c36304 Actually add BoxSwitch effect.
svn path=/branches/work/kwin_composite/; revision=640631
2007-03-08 16:54:50 +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
29f9714a7e Capseo has moved.
svn path=/branches/work/kwin_composite/; revision=636916
2007-02-24 17:36:37 +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
9dda6936a7 Ok, plugins will be GPL as well.
svn path=/branches/work/kwin_composite/; revision=636633
2007-02-23 16:32:15 +00:00
Luboš Luňák
6d16df2007 This one has to be GPL because of libcaptury.
svn path=/branches/work/kwin_composite/; revision=636626
2007-02-23 16:26:20 +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
Luboš Luňák
4019dff500 Distinguish between damage and repaints - damage is when windows contents
change, repaint just triggers repaint of the area (without e.g. the texture
updating for OpenGL).
addDamage() -> addRepaint()
CCMAIL: kwin@kde.org


svn path=/branches/work/kwin_composite/; revision=632866
2007-02-12 15:22:43 +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
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
949aa1a778 Add PAINT_SCREEN_WITH_TRANSFORMED_WINDOWS flag, to be called by effects in prePaintScreen(). Indicates that some window(s) may have transformed geometry, so the whole screen should be repainted.
svn path=/branches/work/kwin_composite/; revision=632580
2007-02-11 17:35:10 +00:00
Luboš Luňák
0a9e366038 Just use findModal().
svn path=/branches/work/kwin_composite/; revision=632379
2007-02-10 21:55:31 +00:00
Dirk Mueller
6c224134db porting simplifications regarding KConfig::readEntry
svn path=/branches/work/kwin_composite/; revision=632199
2007-02-10 09:12:35 +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
cc93b859e3 Make Client::iconGeometry() recursively use it's mainwindow's icongeometry if it
doesn't have one itself.

svn path=/branches/work/kwin_composite/; revision=628327
2007-01-29 19:28:53 +00:00
Rivo Laks
8669b298be Minimize e.g. dialogs onto taskbar entries of their mainwindows.
If everything else fails, minimize to the center of the screen.

svn path=/branches/work/kwin_composite/; revision=627172
2007-01-25 21:23:27 +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
Rivo Laks
a00b314b5a Temporarily-unminimize hack doesn't seem to be necessary anymore.
Use transparency for minimized windows in the fade-in and fade-out phases (when
  the effect is not fully active yet)

svn path=/branches/work/kwin_composite/; revision=626829
2007-01-24 17:43:36 +00:00
Rivo Laks
adb35ae446 Adding WavyWindows effect which makes all windows wavy.
Meant to demonstrate possibilities of vertex transforming and for cool screenshots ;-)

svn path=/branches/work/kwin_composite/; revision=626815
2007-01-24 17:19:00 +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
Rivo Laks
33f8a0758c Add Expose-like effect to show all windows of active desktop side by side.
Another window can then be activated by clicking on it.
Also add interpolate() utility function to Effect

svn path=/branches/work/kwin_composite/; revision=622634
2007-01-12 14:14:53 +00:00
Luboš Luňák
de4d1bc518 Implement cursorPos() as an optimized version of QCursor::pos()
that tries to reduce the number of X roundtrips.


svn path=/branches/work/kwin_composite/; revision=620326
2007-01-05 17:45:54 +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
f1be2aa724 Optimize XRender painting by manually doing clipping, even with transformations.
Since it's unlikely XRender code will use other transformations then the ones
provided this should be ok. Makes painting with obscured windows much faster
(i.e. it's just slow, not bloody slow).


svn path=/branches/work/kwin_composite/; revision=610613
2006-12-04 18:30:41 +00:00
Luboš Luňák
1c151d222b Fix the zoom effect to use time differences instead of a hardcoded step.
svn path=/branches/work/kwin_composite/; revision=610611
2006-12-04 18:29:16 +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
a4d6273de0 Do glFinish()/XSync() to make sure all painting has been also processed.
svn path=/branches/work/kwin_composite/; revision=608430
2006-11-27 15:13:10 +00:00
Luboš Luňák
f551826ae2 Wait for all XRender requests to be actually sent and processes, not just
queued.


svn path=/branches/work/kwin_composite/; revision=606788
2006-11-21 20:08:08 +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
0283b97a62 When no transformations are needed simple screen painting can be used
even for painting the whole screen, not just a region.


svn path=/branches/work/kwin_composite/; revision=605563
2006-11-17 08:43:24 +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
8036be5f52 Fix dialog<->parent handling to also work with group transient dialogs.
svn path=/branches/work/kwin_composite/; revision=603396
2006-11-08 19:29:29 +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
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
bed1c3c6b9 Fix a crash.
svn path=/branches/work/kwin_composite/; revision=600512
2006-10-30 20:33:06 +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