Commit graph

115 commits

Author SHA1 Message Date
Luboš Luňák
ff13bd5ed5 Don't assign the return value to a member variable.
svn path=/trunk/KDE/kdebase/workspace/; revision=845784
2008-08-12 11:45:06 +00:00
Luboš Luňák
63b01aff5d Rework handling of mapping and unmapping windows, in particular:
- the NormalState/IconicState things in ICCCM need to match exactly
  the real mapping state, so ensure that, no matter how superfluous that is
- extend the option for having live window previews either for all
  windows or for only all shown windows (default)
FEATURE: 163385


svn path=/trunk/KDE/kdebase/workspace/; revision=845772
2008-08-12 11:02:58 +00:00
Luboš Luňák
085abe58b2 Don't lose the desktop submenu in Alt+F3.
svn path=/trunk/KDE/kdebase/workspace/; revision=843596
2008-08-07 11:51:20 +00:00
Luboš Luňák
20a2c36677 Discard Deleted windows when finishing compositing, so that they're
not reused if compositing is started again.
BUG: 152914


svn path=/trunk/KDE/kdebase/workspace/; revision=838646
2008-07-28 11:49:43 +00:00
Luboš Luňák
f56fd92540 No initial overlay window contents.
BUG: 166514


svn path=/trunk/KDE/kdebase/workspace/; revision=837331
2008-07-24 13:00:06 +00:00
Luboš Luňák
905b5676b2 Try to handle gracefully the case when there are many small changes
on the screen and the X server has absolutely no problem with flooding
KWin with a huge number of damage events, overloading both the X connection
and QRegion.
BUG: 163643


svn path=/trunk/KDE/kdebase/workspace/; revision=836664
2008-07-22 18:20:42 +00:00
Luboš Luňák
79bb84e119 Use KWin's internal stacking order for managed windows, not the X one.
Fixes composited drawing of windows on other desktops.
BUG: 161436


svn path=/trunk/KDE/kdebase/workspace/; revision=828060
2008-07-04 14:06:23 +00:00
Luboš Luňák
5d0f9b66dd Fix last commit.
svn path=/trunk/KDE/kdebase/workspace/; revision=827111
2008-07-02 10:11:16 +00:00
Luboš Luňák
2bae5f1f4b Fix a possible pixmap leak.
svn path=/trunk/KDE/kdebase/workspace/; revision=826826
2008-07-01 14:51:38 +00:00
Luboš Luňák
ecedf122b3 Disable the code that prevented clients not-yet-ready-for-painting
from being shown. There is a bug somewhere and it should be improved
in general.
BUG: 160393


svn path=/trunk/KDE/kdebase/workspace/; revision=825817
2008-06-29 13:11:01 +00:00
Lucas Murray
d515abb82c Added screenNumber() and addRepaint(QRegion) to effects API
svn path=/trunk/KDE/kdebase/workspace/; revision=822215
2008-06-19 14:16:21 +00:00
Luboš Luňák
ed2d087f9b Shortcut for temporarily suspending compositing. Useful when
one wants to run something graphically intensive like a game
or when compositing goes awry and one wants to see the checkbox
that turns it off.
FEATURE: 155581


svn path=/trunk/KDE/kdebase/workspace/; revision=810031
2008-05-19 21:48:47 +00:00
Luboš Luňák
4c5fc70aa3 One more hopefully useful document.
svn path=/trunk/KDE/kdebase/workspace/; revision=807814
2008-05-14 19:49:29 +00:00
Luboš Luňák
5d1c5d355f Skip windows not ready for painting before computing screen area to redraw.
svn path=/trunk/KDE/kdebase/workspace/; revision=807441
2008-05-13 20:49:56 +00:00
Luboš Luňák
9bd87cb271 Redo timing of next painting with vsync used, try harder not to miss
every other sync just by a small time.


svn path=/trunk/KDE/kdebase/workspace/; revision=806443
2008-05-11 12:03:42 +00:00
Luboš Luňák
53cc35b649 Show the composite overlay window only before the first painting pass
actually needs to flush the output to the screen. Avoids windows
temporarily disappearing during KDE startup or similar visual glitches.


svn path=/trunk/KDE/kdebase/workspace/; revision=806387
2008-05-11 09:48:34 +00:00
Luboš Luňák
2f8d2751a1 Fix handling of stacking order of unmanaged windows. Could maybe use a little
bit more of optimization.
BUG: 157878


svn path=/trunk/KDE/kdebase/workspace/; revision=800581
2008-04-24 12:53:03 +00:00
Luboš Luňák
2fb2f76168 Reshuffle compositing init a bit, and make KWIN_COMPOSE work even
if compositing is turned off in options.


svn path=/trunk/KDE/kdebase/workspace/; revision=772299
2008-02-08 10:31:40 +00:00
Luboš Luňák
4b792d000e Make error messages about compositing use kError(), so that they show up
even in release builds. Point to release notes in case of error.


svn path=/trunk/KDE/kdebase/workspace/; revision=768132
2008-01-29 14:23:26 +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
7b0b67b988 Change kError's to kDebug as they don't tell the user anything
useful in release builds anyway.


svn path=/trunk/KDE/kdebase/workspace/; revision=761477
2008-01-14 22:16:29 +00:00
Rivo Laks
0d64af45ce Make elevatedWindows() return list of EffectWindow pointers instead
of Toplevel ones. This makes it independant of the Toplevel objects
  and fixes a crash when an elevated window is closed.

svn path=/trunk/KDE/kdebase/workspace/; revision=760802
2008-01-13 13:00:15 +00:00
Luboš Luňák
e64ddaba99 Do not fall back to XRender due to XRender not doing very well.
svn path=/trunk/KDE/kdebase/workspace/; revision=756727
2008-01-03 16:51:20 +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
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
eb0d793157 Default to SeparateScreenFocus being false, to be consistent with KDE3.
(and e.g. #141997).


svn path=/trunk/KDE/kdebase/workspace/; revision=739693
2007-11-21 15:54:06 +00:00
Luboš Luňák
5c9fd52311 Make debug output say that compositing is not available also
if opengl/xrender weren't found at compile time.


svn path=/trunk/KDE/kdebase/workspace/; revision=739692
2007-11-21 15:46:58 +00:00
Luboš Luňák
e13c612922 Don't keep the compositing manager selection when not doing compositing.
svn path=/trunk/KDE/kdebase/workspace/; revision=736335
2007-11-13 23:51:46 +00:00
Luboš Luňák
76a9bdcc85 Fix crash.
svn path=/trunk/KDE/kdebase/workspace/; revision=728490
2007-10-23 13:07:15 +00:00
Luboš Luňák
0e55f109c5 Don't do any compositing when nothing is visible anyway (e.g. when switched
away from the X session).


svn path=/trunk/KDE/kdebase/workspace/; revision=726713
2007-10-18 17:58:08 +00:00
Luboš Luňák
dddcbd06b5 Re-enable throttling, with lower time.
svn path=/trunk/KDE/kdebase/workspace/; revision=725842
2007-10-16 10:17:14 +00:00
Luboš Luňák
0493a2f4b9 Try to disable the throttling code, it decreases smoothness of animations.
svn path=/trunk/KDE/kdebase/workspace/; revision=724532
2007-10-12 15:30:12 +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
68f7504fb0 - Add CompositingPrefs::compositingPossible() to check if compositing is supported at all.
- Use it in setupCompositing()

svn path=/trunk/KDE/kdebase/workspace/; revision=717330
2007-09-26 16:34:08 +00:00
Luboš Luňák
8985ca0b7f Properly reload compositing settings on reconfigure.
svn path=/trunk/KDE/kdebase/workspace/; revision=716806
2007-09-25 09:41:23 +00:00
Rivo Laks
59f21e39fe Add automatic driver detection for compositing options.
This is used to set sane defaults and work around possible driver bugs.
Also, if you have a "whitelisted" driver (nvidia >= 96.39 or intel >= 20061017)
  then compositing will be enabled by default for you.

svn path=/trunk/KDE/kdebase/workspace/; revision=714004
2007-09-18 13:59: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
Rivo Laks
824f005f58 Add beginnings of kwincompositing config module, meant to replace kwintranslucency one
svn path=/trunk/KDE/kdebase/workspace/; revision=689947
2007-07-19 16:20:05 +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
Luboš Luňák
8d929cb3fc Overlay window also needs input shape.
svn path=/trunk/KDE/kdebase/workspace/; revision=683158
2007-07-04 09:52:03 +00:00
Luboš Luňák
162d6ac7c9 Support for _NET_WM_SYNC_REQUEST, based on a patch
by Rayiner Hashem <gtg990h@mail.gatech.edu>.


svn path=/trunk/KDE/kdebase/workspace/; revision=679986
2007-06-25 08:51:44 +00:00
Rivo Laks
34d9b03aff More debugging when compositing is disabled
svn path=/trunk/KDE/kdebase/workspace/; revision=672265
2007-06-06 15:24:17 +00:00
Luboš Luňák
a352c5d349 Fall back to XRender if OpenGL fails.
svn path=/trunk/KDE/kdebase/workspace/; revision=671719
2007-06-05 12:50:18 +00:00
Luboš Luňák
1caa3f95ed Properly check for all needed extensions and handle gracefully absence.
svn path=/trunk/KDE/kdebase/workspace/; revision=669827
2007-05-30 14:22:09 +00:00
Luboš Luňák
b70a68b02b Debug output of composite/damage extensions are not available.
svn path=/trunk/KDE/kdebase/workspace/; revision=669803
2007-05-30 13:05:06 +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
Luboš Luňák
1040404a2a Track stacking order of unmanaged windows.
svn path=/trunk/KDE/kdebase/workspace/; revision=667686
2007-05-23 16:22:59 +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