Commit graph

56 commits

Author SHA1 Message Date
Rivo Laks
1112d7fd69 Don't scale windows more than 2 times.
This prevents e.g. a quarter-screen big klipper

svn path=/trunk/KDE/kdebase/workspace/; revision=714057
2007-09-18 16:47:32 +00:00
Rivo Laks
84c15214c5 Blend the window labels in/out with the effect
svn path=/trunk/KDE/kdebase/workspace/; revision=709129
2007-09-06 15:50:53 +00:00
Luboš Luňák
e6069e9cf6 Arghl. Again a stupid bug caused by float having poor precision.
Reverting r700026 and changing floats to doubles again. I'd probably like
to change even the ones interfacing with OpenGL which I've left for now.


svn path=/trunk/KDE/kdebase/workspace/; revision=707987
2007-09-03 15:00:43 +00:00
Rivo Laks
d618ba8d23 Turn paintText() into two generic methods: one just paints the text, the other also paints
background. Move the methods into kwineffects.*

svn path=/trunk/KDE/kdebase/workspace/; revision=707699
2007-09-02 18:20:36 +00:00
Rivo Laks
106fbc23ab - Draw caption for all windows.
- Correctly apply alpha to text as well (in OpenGL mode)

svn path=/trunk/KDE/kdebase/workspace/; revision=707675
2007-09-02 16:43:31 +00:00
Rivo Laks
1a587da8d6 Show caption for active window.
It might be a good idea to even do it for all windows (or maybe with a config option?)

svn path=/trunk/KDE/kdebase/workspace/; revision=707673
2007-09-02 16:30:18 +00:00
Pino Toscano
ee84e19a8f less qt3support
svn path=/trunk/KDE/kdebase/workspace/; revision=707454
2007-09-01 22:29:47 +00:00
Rivo Laks
38bc48cb11 Prettify filter box by adding frame around it and prepending "Filter:" to the filter text.
Also add some comments.

svn path=/trunk/KDE/kdebase/workspace/; revision=704435
2007-08-24 21:27:01 +00:00
Thiago Macieira
d2aee14a35 Remove use of k_funcinfo
svn path=/trunk/KDE/kdebase/workspace/; revision=702583
2007-08-20 21:33:48 +00:00
Luboš Luňák
d846a1e8a9 Use always float as the floating point type for compositing
(http://lists.kde.org/?l=kwin&m=118493073424327&w=2).


svn path=/trunk/KDE/kdebase/workspace/; revision=700026
2007-08-14 15:22:23 +00:00
Laurent Montel
994c800d79 Adapt to new KWarning/kFatal/kDebug api
svn path=/trunk/KDE/kdebase/workspace/; revision=695877
2007-08-03 06:59:24 +00:00
Rivo Laks
7273d0ddb5 Add setTransformed() helper method
svn path=/trunk/KDE/kdebase/workspace/; revision=689913
2007-07-19 14:05:59 +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
Rivo Laks
1552ad2c11 Same here: don't render null icons
svn path=/trunk/KDE/kdebase/workspace/; revision=688599
2007-07-16 11:51:54 +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
Rivo Laks
913d8395d8 Add window icons to PresentWindows.
Code stolen from BoxSwitch ;-)

svn path=/trunk/KDE/kdebase/workspace/; revision=683858
2007-07-05 11:41:02 +00:00
Pino Toscano
38267e8ac6 less qt3support
svn path=/trunk/KDE/kdebase/workspace/; revision=672194
2007-06-06 10:37:37 +00:00
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
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
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
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
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
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
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
8e25dd6bfa Port to plugins.
svn path=/branches/work/kwin_composite/; revision=652956
2007-04-12 11:55:07 +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
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
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
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
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
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
d4a58f4152 QMap -> QHash
svn path=/branches/work/kwin_composite/; revision=642532
2007-03-14 16:50:19 +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
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