Commit graph

412 commits

Author SHA1 Message Date
Sebastian Kügler
d09306ae55 Improve API docs of the TimeLine class.
CCMAIL: ubuntu@martin-graesslin.com

svn path=/trunk/KDE/kdebase/workspace/; revision=803464
2008-05-02 23:29:56 +00:00
Sebastian Kügler
b953f0a046 Introduce TimeLine, a class providing non-linear animation patterns
to KWin effects.

The class basically wraps QTimeLine right now, but it's easy to pop
in function implementing different animation timeline patterns.

Patches to the first effects using this TimeLine are coming up ...

svn path=/trunk/KDE/kdebase/workspace/; revision=798719
2008-04-18 23:57:05 +00:00
Alexander Neundorf
e36a1cecee some more space to enhance readability
Alex



svn path=/trunk/KDE/kdebase/workspace/; revision=795598
2008-04-10 23:15:44 +00:00
Christian Ehrlicher
d91c540b61 LIB_INSTALL_DIR -> INSTALL_TARGETS_DEFAULT_ARGS
svn path=/trunk/KDE/kdebase/workspace/; revision=792590
2008-04-01 16:42:27 +00:00
Luboš Luňák
01d9d88580 Add a dbus call to query which color settings the current decoration
supports, to be used by kcmcolors.


svn path=/trunk/KDE/kdebase/workspace/; revision=788598
2008-03-21 22:17:10 +00:00
Luboš Luňák
f77561ce65 Don't discard window texture when only the shape changes but the window
geometry actually stays the same. Avoids large number of rebinds (with no
strict binding) with the launch feedback icon.


svn path=/trunk/KDE/kdebase/workspace/; revision=787948
2008-03-20 10:05:41 +00:00
Luboš Luňák
75623e889a Documentation for window types functions.
svn path=/trunk/KDE/kdebase/workspace/; revision=784766
2008-03-12 10:46:41 +00:00
Luboš Luňák
d8a3602e45 Add assert().
svn path=/trunk/KDE/kdebase/workspace/; revision=782273
2008-03-04 18:29:17 +00:00
Luboš Luňák
0b1cef2414 Do #define's properly for XRender.
svn path=/trunk/KDE/kdebase/workspace/; revision=781906
2008-03-03 21:12:48 +00:00
Rivo Laks
3f581b4d0c Add a method to subdivide the window into regular grid.
Will be used by wobbly windows effect.

svn path=/trunk/KDE/kdebase/workspace/; revision=781469
2008-03-02 22:28:50 +00:00
Adriaan de Groot
e8e15bddb9 Need Xfixes.h for XFixesCreateRegion(), regardless of whether Xrender is available.
svn path=/trunk/KDE/kdebase/workspace/; revision=780234
2008-02-28 13:15:39 +00:00
Laurent Montel
b844bcae41 Fix compile (need to export it)
svn path=/trunk/KDE/kdebase/workspace/; revision=779292
2008-02-25 19:53:43 +00:00
Luboš Luňák
cff2b0e6cd Abstract paint clipping into PaintClipper helper class that allows
stacking of clipping regions.
(http://lists.kde.org/?l=kwin&m=120138051215450&w=2)
BUG: 156798


svn path=/trunk/KDE/kdebase/workspace/; revision=779045
2008-02-25 11:32:21 +00:00
Luboš Luňák
73ad1f1adc Use a modified errorMessage() with explicitly listing all extensions used by KWin.
svn path=/trunk/KDE/kdebase/workspace/; revision=778705
2008-02-24 11:41:55 +00:00
Dirk Mueller
de19077399 header cleanness++
svn path=/trunk/KDE/kdebase/workspace/; revision=770658
2008-02-04 10:24:45 +00:00
Luboš Luňák
022e417322 Install all public header files.
svn path=/trunk/KDE/kdebase/workspace/; revision=769465
2008-02-01 14:15:16 +00:00
Luboš Luňák
685e1d2361 Make it possible to use KDecorationOptions without private headers.
svn path=/trunk/KDE/kdebase/workspace/; revision=768271
2008-01-29 16:44:41 +00:00
Rivo Laks
5b38737dee Add apidox for kwineffects group, showing the necessary steps for
adding a new effect.

svn path=/trunk/KDE/kdebase/workspace/; revision=767202
2008-01-27 14:43:05 +00:00
Luboš Luňák
7d620a3ad8 Make KDecorationBridge also public and with kept binary compatibility,
so that Compiz can use it for the KDE decorator. Extending will be
done the same way like with KDecoration.
CCMAIL: Dennis Kasprzyk <onestone@opencompositing.org>


svn path=/trunk/KDE/kdebase/workspace/; revision=766833
2008-01-26 19:00:14 +00:00
Luboš Luňák
3c3b5f4b2d Split kdecoration and kwineffects libraries as two modules for doxygen.
svn path=/trunk/KDE/kdebase/workspace/; revision=762274
2008-01-16 18:13:24 +00:00
Luboš Luňák
110f76ecd8 Change some of the debug messages to warnings, so compositing setup failures
show up also in release builds.


svn path=/trunk/KDE/kdebase/workspace/; revision=762175
2008-01-16 12:44:45 +00:00
Luboš Luňák
bc5acf8268 Shaped shadows are not implemented yet, so disable shadows completely
for shaped windows.


svn path=/trunk/KDE/kdebase/workspace/; revision=756795
2008-01-03 19:39:18 +00:00
Luboš Luňák
f97bd45da9 Redo checks for KWIN_HAVE(_XXX)_COMPOSITING again, in order
to have it the same also in makefiles.


svn path=/trunk/KDE/kdebase/workspace/; revision=756678
2008-01-03 15:22:19 +00:00
Luboš Luňák
c708796804 findWindow()
svn path=/trunk/KDE/kdebase/workspace/; revision=755996
2008-01-02 15:37:46 +00:00
Luboš Luňák
82ad4e01ce Report old buttons and modifiers state in mouseChanged() as well.
svn path=/trunk/KDE/kdebase/workspace/; revision=755995
2008-01-02 15:34:12 +00:00
Luboš Luňák
0bbc0fa5dc Support for getting PropertyNotify events - effects can have their
own properties for communication with something outside of kwin.
Intended now mainly for a better taskbar thumbnails effect.


svn path=/trunk/KDE/kdebase/workspace/; revision=755991
2008-01-02 15:21:33 +00:00
Luboš Luňák
76c76f585d Don't apply DimInactive effect to override-redirect windows. Things
like popups should be short-lived and mostly for the active window anyway.
Possibly could be revisited in the future when support for window grouping
for unmanaged windows gets implemented too.
BUG: 154009


svn path=/trunk/KDE/kdebase/workspace/; revision=755987
2008-01-02 15:17:58 +00:00
Pino Toscano
7496a9bfc3 install also the generated kwinconfig.h
svn path=/trunk/KDE/kdebase/workspace/; revision=754206
2007-12-29 10:30:07 +00:00
Luboš Luňák
c222bdfff4 Forgot svn add.
svn path=/trunk/KDE/kdebase/workspace/; revision=749630
2007-12-17 14:18:07 +00:00
Luboš Luňák
d43b34aa0b Remove old comments.
svn path=/trunk/KDE/kdebase/workspace/; revision=749629
2007-12-17 14:15:32 +00:00
Luboš Luňák
bb433ac40e No longer include config*.h files in installed headers.
Also slightly redo the #define's for effects, now it's:
- #ifdef KWIN_HAVE_COMPOSITING to check whether there's any compositing support at all
- #ifdef KWIN_HAVE_OPENGL_COMPOSITING to check for OpenGL-based compositing
- #ifdef KWIN_HAVE_XRENDER_COMPOSITING the same for XRender
CCMAIL: kwin@kde.org


svn path=/trunk/KDE/kdebase/workspace/; revision=749628
2007-12-17 14:14:53 +00:00
Luboš Luňák
44cc93170d Add check for effect version to prevent loading of incompatible plugins.
Should work automagically, not changes in plugins needed.


svn path=/trunk/KDE/kdebase/workspace/; revision=749626
2007-12-17 14:10:21 +00:00
Rivo Laks
bd19b6dc45 Add EffectWindow::shape()
svn path=/trunk/KDE/kdebase/workspace/; revision=746064
2007-12-07 18:03:24 +00:00
Luboš Luňák
daf1fbd23e Add spacers before the close button to make it stand alone,
but don't alter the layout otherwise.


svn path=/trunk/KDE/kdebase/workspace/; revision=743055
2007-11-29 19:28:07 +00:00
Luboš Luňák
59e845e4e6 Make width of titlebar spacers default to half width of normal buttons,
not some random tiny sizes or even zero. Maybe could need small tweaking
here or there, but a spacer is supposed to make at least some space.


svn path=/trunk/KDE/kdebase/workspace/; revision=743034
2007-11-29 18:37:52 +00:00
Matthew Woehlke
529611c662 Add AbilityAnnounceColors and AbilityColor* abilities to kwin decorations; this way clients can say what colors they support for the benifit of the color kcm (and anyone else that might need to know?)
svn path=/trunk/KDE/kdebase/workspace/; revision=743015
2007-11-29 17:13:15 +00:00
Matthew Woehlke
21433fbb26 NUM_COLORS is internal and might be changed, document it thusly
svn path=/trunk/KDE/kdebase/workspace/; revision=743012
2007-11-29 17:01:14 +00:00
Matthew Woehlke
e3c96063ca SVN_SILENT: --trailing whitespace (so no fighting with kate, or gunk in my next commits)
svn path=/trunk/KDE/kdebase/workspace/; revision=743010
2007-11-29 17:00:27 +00:00
Luboš Luňák
9cae215d63 Maybe later, if somebody will feel like it, too late for KDE4 I think.
svn path=/trunk/KDE/kdebase/workspace/; revision=742977
2007-11-29 14:13:02 +00:00
Luboš Luňák
0170623a9c Separate KCommonDecoration from KDecoration, in order to allow
greater possibilities in extending KDecoration. KCommonDecoration
now does not inherit KDecoration, only wraps it (i.e. it's source
compatible). Added comments on how to extend KDecoration
in the future by subclassing to KDecoration2, added PORTING
document with all API changes in KDE4.
CCMAIL: kwin@kde.org


svn path=/trunk/KDE/kdebase/workspace/; revision=742976
2007-11-29 14:11:02 +00:00
Luboš Luňák
24b3a9b829 No tabs.
svn path=/trunk/KDE/kdebase/workspace/; revision=742694
2007-11-28 16:05:13 +00:00
Luboš Luňák
01bf6cbb4c License cleanup - add headers where missing, be explicit about GPL
being v2+ (right now it says just GPL, which according to GPL itself
means any GPL). Decoration clients will come later.
CCMAIL: kwin@kde.org


svn path=/trunk/KDE/kdebase/workspace/; revision=742302
2007-11-27 19:40:25 +00:00
Luboš Luňák
74b89e491d Revert r741298 - this time the right fix for -Woverloaded-virtual is fixing
the base class.
CCMAIL: montel@kde.org


svn path=/trunk/KDE/kdebase/workspace/; revision=741860
2007-11-26 16:00:21 +00:00
Laurent Montel
e7aa0b3a7e Remove not necessary kdeversion.h
svn path=/trunk/KDE/kdebase/workspace/; revision=741293
2007-11-25 11:12:05 +00:00
Rivo Laks
85e31c0010 Reserve 80 items instead of creating them.
svn path=/trunk/KDE/kdebase/workspace/; revision=741041
2007-11-24 16:51:48 +00:00
Rivo Laks
e0c50df7e3 Preallocate those vectors as well, just like mattr did with the ones in the shadow effect.
svn path=/trunk/KDE/kdebase/workspace/; revision=741018
2007-11-24 16:03:19 +00:00
Rivo Laks
85961ce0a3 Add KWin::GlobalShortcutsEditor which is a KShortcutsEditor that only edits global shortcuts.
This allows shortcut editor widgets to be added in Designer (for 4.1 KShortcutsEditor should
  probably get setActionTypes() method so that it needn't be set in it's ctor).

  libkwineffects also links to kdeui now, I hope it's ok since it linked to QtGUI and kdecore already anyway.

svn path=/trunk/KDE/kdebase/workspace/; revision=740954
2007-11-24 13:43:52 +00:00
Rivo Laks
02a46d9e5a Fix compilation with gcc 3.3
svn path=/trunk/KDE/kdebase/workspace/; revision=740919
2007-11-24 12:12:10 +00:00
Luboš Luňák
c1ed1edb52 Proper support for active xinerama screen in effects.
BUG: 152552 


svn path=/trunk/KDE/kdebase/workspace/; revision=739248
2007-11-20 18:58:30 +00:00
Luboš Luňák
ceb07f1c5c -Woverloaded-virtual
svn path=/trunk/KDE/kdebase/workspace/; revision=739149
2007-11-20 16:19:06 +00:00
Luboš Luňák
d18e4933a0 Make DesktopGrid useful also from keyboard.
svn path=/trunk/KDE/kdebase/workspace/; revision=739147
2007-11-20 16:17:08 +00:00
Luboš Luňák
c83210c60a Remove all code for non-composited animations - they don't work anyway.
svn path=/trunk/KDE/kdebase/workspace/; revision=739143
2007-11-20 16:07:20 +00:00
Luboš Luňák
ab70575d1f Make the outline for moving/resizing work with Qt4, which bothers
to support XOR painting only when XRender is available. Given that
outline should be mainly used with older systems, go for a DIY Xlib-based
solution. Needs changes in decorations using it.
BUG: 149997


svn path=/trunk/KDE/kdebase/workspace/; revision=739136
2007-11-20 16:00:58 +00:00
Rivo Laks
0ac3b393b1 Add some apidocs.
Lots more are still needed but it's a start.

svn path=/trunk/KDE/kdebase/workspace/; revision=737896
2007-11-17 10:20:19 +00:00
Aaron J. Seigo
16e3e5581e * make defaultButtonsLeft and defaultButtonsRight non-pure-virtual so that client plugins that want to just go along with the kde defaults can do so and don't need to reimplement these methods; this is SC, but not BIC
* use defaulTitleButtons[Left|Right] instead of hardcoding those values

svn path=/trunk/KDE/kdebase/workspace/; revision=737209
2007-11-15 20:13:50 +00:00
Aaron J. Seigo
003a0ea7d0 introduce KDecorationOptions::defaultTitleButtonsLeft() and KDecorationOptions::defaultTitleButtonsRight() so as to centralize this default
svn path=/trunk/KDE/kdebase/workspace/; revision=737205
2007-11-15 20:08:57 +00:00
Luboš Luňák
bc6a084894 Let effects access window role as well.
svn path=/trunk/KDE/kdebase/workspace/; revision=736266
2007-11-13 19:59:53 +00:00
Rivo Laks
a2801f1ba1 Add #define with KWin effects API version so that 3rd party effects can check for compatibility
svn path=/trunk/KDE/kdebase/workspace/; revision=736187
2007-11-13 17:03:24 +00:00
Rivo Laks
bb9ff25ec4 Prevent multiple fullscreen effects from becoming active at the same time as discussed
on kwin ml

svn path=/trunk/KDE/kdebase/workspace/; revision=731717
2007-11-01 17:47:41 +00:00
Luboš Luňák
f55b1056a2 Make KDecorationFactory::supports() const, and also pure virtual to force
changing this signature in reimplementations, as -Woverloaded-virtual is
not in default flags :(.


svn path=/trunk/KDE/kdebase/workspace/; revision=731695
2007-11-01 16:07:38 +00:00
Oswald Buddenhagen
aff1787ff9 KConfig* API overhaul. only cosmetics, so don't panic.
KConfigBase:
- remove separator argument from list entry reading/writing functions
- introduce {read,write}XdgListEntry()
- kill readPathListEntry(), add readPathEntry() overload
  instead. the default value is not optional any more, as it defines the
  return type. this is consistent with the readEntry() functions.
- rename clean() => markAsClean(), remove rollback()
- rename ConfigState => AccessMode, getConfigState() => accessMode()
- rename {entry,group}IsImmutable() => is{Entry,Group}Immutable()
- remove NLS alias to Localized

KConfig:
- remove setGroup() & group()
- reshuffle OpenFlag enum, introduce NoCascade for symmetry
- remove setExtraConfigFiles() alias to addConfigSources()

KConfigGroup:
- inherit KConfigBase::deleteGroup() overloads
- make convertToQVariant() private, it will probably change somehow

- KConfig & KConfigGroup: deprecate entryMap()
- remove bogus declarations: KConfigGroup::setReadDefaults(),
  KConfig::readEntryUntranslated()
- apidox
- reshuffle the declarations in the headers


svn path=/trunk/KDE/kdebase/workspace/; revision=728852
2007-10-24 13:08:37 +00:00
Pino Toscano
54289af3ea #include fixup
svn path=/trunk/KDE/kdebase/workspace/; revision=722244
2007-10-07 00:08:11 +00:00
Andreas Pakulat
39e322fc83 Merge the KConfig branch. This are the 3 main modules (+kdeadmin), which are
needed now because friday is the last BC day. The rest of the modules will
follow as fast as my laptop allows.

svn path=/trunk/KDE/kdebase/workspace/; revision=721704
2007-10-05 22:21:25 +00:00
Rivo Laks
aa0e5c7773 Dynamically load some of the used GLX symbols and make sure they exist before
initing gl mode.

svn path=/trunk/KDE/kdebase/workspace/; revision=721561
2007-10-05 14:10:13 +00:00
Rivo Laks
a3781228cb Move Extensions class to lib/kwinglobals.*
svn path=/trunk/KDE/kdebase/workspace/; revision=717329
2007-09-26 16:31:06 +00:00
Rivo Laks
7ad70d9c83 Fix compilation
svn path=/trunk/KDE/kdebase/workspace/; revision=714831
2007-09-20 18:06:36 +00:00
Bernhard Loos
4ff6a33526 fix the effect kcm for kwin
(port it to KPluginFactory)

svn path=/trunk/KDE/kdebase/workspace/; revision=714825
2007-09-20 17:48:27 +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
Arto Hytönen
e1c6433c8e pass-by-value -> reference-to-count fixes
svn path=/trunk/KDE/kdebase/workspace/; revision=707741
2007-09-02 20:01:17 +00:00
Arto Hytönen
f3fbc3665b explicit ctors
svn path=/trunk/KDE/kdebase/workspace/; revision=707717
2007-09-02 19:11:09 +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
Pino Toscano
44bab7a4eb set the autoFillBackground for the preview widget, so it's painted correctly clearing the garbage below
svn path=/trunk/KDE/kdebase/workspace/; revision=707412
2007-09-01 20:04:10 +00:00
Arto Hytönen
b494cddaa9 includes, include guards and typos fixed
svn path=/trunk/KDE/kdebase/workspace/; revision=705066
2007-08-27 04:31:52 +00:00
Rivo Laks
cc2600100c Add a method to render round box with a dark edge and use it for alt-tab's frame.
Now the frame has a slight edge/border around it which makes it look much better IMHO.

svn path=/trunk/KDE/kdebase/workspace/; revision=704310
2007-08-24 15:44:52 +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
Luboš Luňák
5a50381e1f Move the shader used for painting to WindowPaintData, as it's
more related to one painting than to a window.


svn path=/trunk/KDE/kdebase/workspace/; revision=698576
2007-08-10 11:26:58 +00:00
Luboš Luňák
30eb55863c Make WindowPaintData ctor require an EffectWindow argument,
which is used to fill it in. Makes thumbnails work again.


svn path=/trunk/KDE/kdebase/workspace/; revision=697961
2007-08-08 14:42:06 +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
Aaron J. Seigo
b9c69f425b various ebn fixes (markup, uninling, QString())
svn path=/trunk/KDE/kdebase/workspace/; revision=692765
2007-07-26 07:51:16 +00:00
Aaron J. Seigo
dd72494b2b these are all cheap to pass around and make ebn happy
svn path=/trunk/KDE/kdebase/workspace/; revision=692309
2007-07-25 10:28:57 +00:00
Alex Merry
4f509f0360 Apidocs mainpage work. Just got Plasma and Solid to do here.
svn path=/trunk/KDE/kdebase/workspace/; revision=691959
2007-07-24 18:30:36 +00:00
Luboš Luňák
56eeb84acc More checks that quads are split only in pre-paint and transformed
only in paint.


svn path=/trunk/KDE/kdebase/workspace/; revision=689945
2007-07-19 16:11:27 +00:00
Luboš Luňák
023ebc47b1 Implement smoothNeeded() - window quads need smoothing if width or height
of some of them has changed.


svn path=/trunk/KDE/kdebase/workspace/; revision=689942
2007-07-19 15:55:04 +00:00
Luboš Luňák
dbade7f1a4 No public texture coordinates.
svn path=/trunk/KDE/kdebase/workspace/; revision=689926
2007-07-19 14:56:25 +00:00
Luboš Luňák
9400def76b Set also original position when making a copy of a quad.
svn path=/trunk/KDE/kdebase/workspace/; revision=689924
2007-07-19 14:53:37 +00:00
Luboš Luňák
4dd8d34c8f Don't make texture coordinates in WindowVertex public at all,
the meaning may possibly change in the future if more than one texture
is used. Instead store original coordinates.


svn path=/trunk/KDE/kdebase/workspace/; revision=689918
2007-07-19 14:35:55 +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
Luboš Luňák
e1c5f18414 Separate rendering for decoration and window contents, they can have
different opacity (opacity only for decoration option).


svn path=/trunk/KDE/kdebase/workspace/; revision=689855
2007-07-19 10:07:49 +00:00
Luboš Luňák
b7ae1af212 Pedantic.
svn path=/trunk/KDE/kdebase/workspace/; revision=689597
2007-07-18 16:42:21 +00:00
Luboš Luňák
c29c66832d Make quads carry information about whether the quad is part
of decoration or the actual window contents.


svn path=/trunk/KDE/kdebase/workspace/; revision=689554
2007-07-18 15:01:59 +00:00
Pino Toscano
d7b200945d use QtModule/QFoo includes
svn path=/trunk/KDE/kdebase/workspace/; revision=687987
2007-07-14 23:26:49 +00:00
Pino Toscano
0b6477e90e use QtModule/QFoo includes
svn path=/trunk/KDE/kdebase/workspace/; revision=687972
2007-07-14 22:40:00 +00:00
Rivo Laks
b027b57233 Shaders can now use cursorX and cursorY uniform variables
svn path=/trunk/KDE/kdebase/workspace/; revision=687375
2007-07-13 13:10:31 +00:00
Allen Winter
5c93175949 remove kde4_automoc()
svn path=/trunk/KDE/kdebase/workspace/; revision=685984
2007-07-10 09:14:12 +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
42a4d364c2 Add a generic function to render a box with rounded corners.
Algorithm is basically same as for shadow, perhaps even shadow will use it.

svn path=/trunk/KDE/kdebase/workspace/; revision=683514
2007-07-04 20:33:35 +00:00
Rivo Laks
2632c2ff56 Add ShaderEffect class which provides generic support for fullscreen shader effects
svn path=/trunk/KDE/kdebase/workspace/; revision=683160
2007-07-04 09:54:32 +00:00
Luboš Luňák
cc091a7704 Interesting way of checking if a decoration needs a hard reset - as soon
as one thing that does not need it has changed, it is not needed, regardless
of the rest. Even more interestingly several styles have exactly the same
copy of this nonsense.

CCMAIL: kwin@kde.org


svn path=/trunk/KDE/kdebase/workspace/; revision=678025
2007-06-20 13:38:17 +00:00
Rivo Laks
65bc41c518 Argh.. fix typo
svn path=/trunk/KDE/kdebase/workspace/; revision=675479
2007-06-14 10:36:02 +00:00
Rivo Laks
424f906ab2 - Add optional color argument to renderGLGeometry() functions. If specified, it's used as vertex colors
array when rendering.
- Rearrange some renderGLGeometry() parameters.
- Don't use opengl arrays and glDrawArrays() when rendering a small number of vertices since in this
  case overhead of enabling/disabling the array is too big. Use immediate mode instead in such case.

svn path=/trunk/KDE/kdebase/workspace/; revision=675467
2007-06-14 10:05:51 +00:00
Laurent Montel
ab2fa82d7c Fix include
svn path=/trunk/KDE/kdebase/workspace/; revision=675269
2007-06-13 21:26:08 +00:00
Luboš Luňák
acf4e9ce8e Work around gcc-3.3.3's problem with resolving namespaced symbols.
svn path=/trunk/KDE/kdebase/workspace/; revision=673984
2007-06-11 14:35:09 +00:00
Pino Toscano
38267e8ac6 less qt3support
svn path=/trunk/KDE/kdebase/workspace/; revision=672194
2007-06-06 10:37:37 +00:00
Dirk Mueller
fea3fa920d can't install those, they include a non-installed config header
svn path=/trunk/KDE/kdebase/workspace/; revision=671974
2007-06-05 22:30:08 +00:00
Daniel Molkentin
ce3ac16f97 enable api docs generation for kwin libs
svn path=/trunk/KDE/kdebase/workspace/; revision=671831
2007-06-05 15:31:23 +00:00
Laurent Montel
f32b3e8d92 Remove not necessary "class classname;"
svn path=/trunk/KDE/kdebase/workspace/; revision=671233
2007-06-04 08:24:29 +00:00
Luboš Luňák
eb4fb38657 Have a separate list for glx extensions, to avoid mistakes - now initGL()
is called after initGLX(), so the glx extensions are reset.


svn path=/trunk/KDE/kdebase/workspace/; revision=669818
2007-05-30 13:55:29 +00:00
Rivo Laks
e9cb72087f Add 2 static helper methods to EffectHandler:
One calls reloadEffect() over dbus to reload given effect (to be used in config modules).
The second one returns KConfigGroup for given effect.

svn path=/trunk/KDE/kdebase/workspace/; revision=669435
2007-05-29 11:46:12 +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
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
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
Thorsten Roeder
0666147473 some krazy fixes
svn path=/trunk/KDE/kdebase/workspace/; revision=664331
2007-05-13 17:47:20 +00:00
Harri Porten
f15f97785b much better. suggested by David.
svn path=/trunk/KDE/kdebase/workspace/; revision=663183
2007-05-10 12:49:57 +00:00
Harri Porten
f18bd0b02d Patch by Frerich to fix linking for poor BSD users.
This cries out to a CMake expert for a configure check.

svn path=/trunk/KDE/kdebase/workspace/; revision=663171
2007-05-10 11:35:45 +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
Luboš Luňák
6e8ca14379 Svnrevertlast, the file as a whole should be opengl-only.
svn path=/trunk/KDE/kdebase/workspace/; revision=661861
2007-05-06 20:39:09 +00:00
Aaron J. Seigo
da80cba35c compile fixes; and now to find out why it thinks i don't have gl installed ;)
svn path=/trunk/KDE/kdebase/workspace/; revision=661574
2007-05-06 00:17:21 +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
Laurent Montel
97b117f449 Fix add version to lib
svn path=/trunk/KDE/kdebase/workspace/; revision=660384
2007-05-02 14:48:49 +00:00
Luboš Luňák
ee040a6681 Merging from old trunk:
r644597 | mueller | 2007-03-20 15:21:56 +0100 (Tue, 20 Mar 2007) | 2 lines

pedantic--


svn path=/trunk/KDE/kdebase/workspace/; revision=659566
2007-04-30 12:23:20 +00:00
Luboš Luňák
6081a9f0a8 Merging from old trunk:
r637475 | mueller | 2007-02-26 16:46:23 +0100 (Mon, 26 Feb 2007) | 2 lines

header cleanness++


svn path=/trunk/KDE/kdebase/workspace/; revision=659554
2007-04-30 12:08:47 +00:00
Luboš Luňák
c2791ad389 Merging from old trunk:
r637366 | mueller | 2007-02-26 08:44:18 +0100 (Mon, 26 Feb 2007) | 2 lines

header cleanness++


svn path=/trunk/KDE/kdebase/workspace/; revision=659553
2007-04-30 12:08:23 +00:00
Luboš Luňák
a46d4c9498 Merging from old trunk:
r636679 | mueller | 2007-02-23 21:24:36 +0100 (Fri, 23 Feb 2007) | 2 lines

various kconfig portings


svn path=/trunk/KDE/kdebase/workspace/; revision=659551
2007-04-30 12:07:08 +00:00
Luboš Luňák
2c8505e08a Merging from old trunk:
r635264 | mueller | 2007-02-19 17:56:53 +0100 (Mon, 19 Feb 2007) | 2 lines

fix library versioning


svn path=/trunk/KDE/kdebase/workspace/; revision=659548
2007-04-30 12:01:18 +00:00
Luboš Luňák
0bb63f90e9 Compile.
svn path=/trunk/KDE/kdebase/workspace/; revision=659536
2007-04-30 11:50:32 +00:00
Luboš Luňák
79ab08b9e9 Merging from old trunk:
r629104 | hausmann | 2007-02-01 12:40:13 +0100 (Thu, 01 Feb 2007) | 2 lines

Don't crash due to a missing Q_OBJECT macro


svn path=/trunk/KDE/kdebase/workspace/; revision=659531
2007-04-30 11:45:52 +00:00
Luboš Luňák
9528129717 Merging from old trunk:
r608824 | lunakl | 2006-11-28 15:42:48 +0100 (Tue, 28 Nov 2006) | 4 lines

Match defaults.
(BUG: 137889)


svn path=/trunk/KDE/kdebase/workspace/; revision=659468
2007-04-30 09:40:14 +00:00
Luboš Luňák
1f71d535b5 Merging from old trunk:
r604645 | mlaurent | 2006-11-13 16:31:59 +0100 (Mon, 13 Nov 2006) | 2 lines

Fix compile with compilator!=gcc


svn path=/trunk/KDE/kdebase/workspace/; revision=659311
2007-04-29 22:38:19 +00:00
Luboš Luňák
2c539daa5d Merging from old trunk:
r598290 | mlaurent | 2006-10-23 08:53:27 +0200 (Mon, 23 Oct 2006) | 5 lines

Apply Alex patch (now we can use enable-final argument
some module compiles with enable-final now)
As discussed with Alex it's not necessary to have program name
into automoc macro


svn path=/trunk/KDE/kdebase/workspace/; revision=659295
2007-04-29 22:04:13 +00:00
Luboš Luňák
80e6a05440 Merging from old trunk:
r595998 | lunakl | 2006-10-16 14:41:38 +0200 (Mon, 16 Oct 2006) | 3 lines

Fix two same argument names.


svn path=/trunk/KDE/kdebase/workspace/; revision=659293
2007-04-29 22:01:59 +00:00
Luboš Luňák
ea07e100b4 Merging from old trunk:
r565957 | winterz | 2006-07-25 00:17:55 +0200 (Tue, 25 Jul 2006) | 3 lines

install_files() -> install(FILES..)
also use variables in a few more places


svn path=/trunk/KDE/kdebase/workspace/; revision=659262
2007-04-29 20:56:31 +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
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
17ae1620ac Little clarifying API doc for nearestPowerOfTwo().
svn path=/branches/work/kwin_composite/; revision=659150
2007-04-29 15:31:57 +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
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
Laurent Montel
67f6750ab3 Remove not necessary include
svn path=/trunk/KDE/kdebase/workspace/; revision=656776
2007-04-22 11:14:24 +00:00
Laurent Montel
2178c6dc31 Include fix
svn path=/trunk/KDE/kdebase/workspace/; revision=656565
2007-04-21 18:28:47 +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
ec29f33832 Make enable/disableUnnormalizedTexCoords() work with custom textures (e.g. rendertarget ones).
Make texture dirty when enabling rendertarget.

svn path=/branches/work/kwin_composite/; revision=656496
2007-04-21 15:04:37 +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