Martin Gräßlin
9868b062c1
When finishing compositing we have to trigger a decoration repaint or there will be artefacts.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=961903
2009-04-30 22:08:33 +00:00
Martin Gräßlin
63edbaff81
Show current compositing state (disabled/suspended/active) in Desktop Effects KCM and add a button to resume/suspend compositing. So it should be easier for the user to resume compositing if he does not know about the shortcut.
...
CCBUG: 188118
svn path=/trunk/KDE/kdebase/workspace/; revision=955636
2009-04-18 10:07:16 +00:00
Martin Gräßlin
253793dfff
Use custom notification for compositing suspended via dbus.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=949932
2009-04-06 09:33:43 +00:00
Martin Gräßlin
9174c43eb0
Show notification when compositing is suspended via dbus.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=948322
2009-04-02 19:14:48 +00:00
Aike J. Sommer
f30b3e2373
Resize the overlay-window to allow compositing to continue working after xrandr-events.
...
CCBUG:180994
svn path=/trunk/KDE/kdebase/workspace/; revision=937637
2009-03-10 08:06:49 +00:00
Luboš Luňák
1c2ba6ea17
I forgot to actually implement the resetCompositing() slot for the previous commit.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=924759
2009-02-11 14:29:32 +00:00
Luboš Luňák
4d82d2291e
Don't needlessly setup compositing twice during startup.
...
Xrandr seems to like to send events about "changes" right
after application startup.
svn path=/trunk/KDE/kdebase/workspace/; revision=923829
2009-02-09 14:31:42 +00:00
Lucas Murray
cbea219964
Missing code from mouse polling commit. Stop polling when compositing is
...
disabled and increment the effect API version number.
svn path=/trunk/KDE/kdebase/workspace/; revision=920963
2009-02-04 07:09:47 +00:00
Lucas Murray
752d5fa642
Extracted mouse polling out of the composite timer to allow effects to
...
detect mouse movement and modifier key changes even when KWin is idle.
As the track mouse effect requires polling to always be active disabling
it by default to prevent wasting CPU usage in the default install.
svn path=/trunk/KDE/kdebase/workspace/; revision=919711
2009-02-01 15:16:52 +00:00
Martin Gräßlin
6a25ea49ee
Deactivate scene idle during active fullscreen effect. So mouse events aren't dropped and mouse is usable in fullscreen effects, again. Of course this is not the best solution.
...
BUG: 177226
svn path=/trunk/KDE/kdebase/workspace/; revision=906064
2009-01-05 13:34:41 +00:00
Martin Gräßlin
f07944389e
Redirect windows when there is an active fullscreen effect. This solves the problem of unredirected fullscreen applications blocking effects like present windows or desktop grid.
...
BUG: 176996
svn path=/trunk/KDE/kdebase/workspace/; revision=906014
2009-01-05 12:52:27 +00:00
Luboš Luňák
e53a9e8701
Maybe slightly better debug output.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=904310
2009-01-01 21:17:58 +00:00
Jason vanRijn Kasper
fb0a01228f
This change allows KWin to use the new NETWinInfo2 class (binary
...
compatibility class) and subsequently properly handle the
_NET_WM_FULLSCREEN_MONITORS EWMH spec hint.
svn path=/trunk/KDE/kdebase/workspace/; revision=885362
2008-11-17 08:03:39 +00:00
Laurent Montel
5535a9de5e
Fix iterator
...
svn path=/trunk/KDE/kdebase/workspace/; revision=883047
2008-11-11 23:09:11 +00:00
Albert Astals Cid
5f7174a27e
Saying
...
"If this was only a temporary problem, you can resume using the 'Empty' shortcut.\n"
if no shortcut is found makes no sense, reworked to avoid it
Tried my best to do correct indentation but make failed
svn path=/trunk/KDE/kdebase/workspace/; revision=878365
2008-10-31 23:54:52 +00:00
Albert Astals Cid
6581455b93
we are showing the shortcut to the user so use QKeySequence::NativeText to get it translated
...
svn path=/trunk/KDE/kdebase/workspace/; revision=878357
2008-10-31 23:49:17 +00:00
Luboš Luňák
c12172d291
A hack to disable unredirect for login splashscreen, better solution would
...
be to add support for effects refcounting the window.
BUG: 172276
svn path=/trunk/KDE/kdebase/workspace/; revision=871255
2008-10-14 10:34:35 +00:00
Hasso Tepper
b19ba265f6
Fix compile on systems without XComposite.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=870784
2008-10-13 09:56:13 +00:00
Albert Astals Cid
882b909364
Add const & so we don't copy all that objects for nothing, faster effects for free!
...
svn path=/trunk/KDE/kdebase/workspace/; revision=869928
2008-10-11 12:38:46 +00:00
Luboš Luňák
9ad12bc391
Add one more check for paints taking too much time, this time
...
also detect not-so-bad-but-still-slow paint times over a longer
period of time, i.e. the old check is for systems which are pathetically
slow, this one is for systems that are just slow. Possibly may need
tweaking for cases like high system load, but right now it seems
that e.g. a compilation running cannot trigger this check because
it cannot cause many long repaints in a row.
svn path=/trunk/KDE/kdebase/workspace/; revision=866636
2008-10-01 14:29:56 +00:00
Luboš Luňák
f8163eac9d
Use setOverlayShape() instead of doing it manually.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=863939
2008-09-23 15:22:25 +00:00
Luboš Luňák
e433f92374
Avoid useless repeated processing of checking whether to unredirect.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=863933
2008-09-23 14:51:21 +00:00
Luboš Luňák
503bf3e767
Add a check that measures time needed for one compositing pass.
...
If three successive ones take more than 1 sec, suspend compositing,
as that very likely means the system is totally incapable of decent
compositing. Perhaps may need little tweaking.
svn path=/trunk/KDE/kdebase/workspace/; revision=861906
2008-09-17 13:42:12 +00:00
Luboš Luňák
8eedfa3456
Another attempt at self-check, this time done directly during setup
...
(so that it can fail immediately).
svn path=/trunk/KDE/kdebase/workspace/; revision=859960
2008-09-11 16:37:26 +00:00
Andreas Hartmetz
af3b302b05
be more strict about acceptable frame intervals - system time really *can* change without notice.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=859340
2008-09-10 04:35:28 +00:00
Andreas Hartmetz
56a323877e
fix kwin-composite lockup at time of day == 00:00:00. also note that compositeRate is misnamed, it is an interval. CCMAIL:l.lunak@kde.org
...
svn path=/trunk/KDE/kdebase/workspace/; revision=859300
2008-09-09 23:14:52 +00:00
Luboš Luňák
c6230db535
Stop the compositing timer when idle.
...
FEATURE: 155694
svn path=/trunk/KDE/kdebase/workspace/; revision=854913
2008-08-30 15:28:47 +00:00
Luboš Luňák
19a9dd4095
Fix the flicker caused by unredirecting code - apparently setting the same
...
shape with X is not a no-op.
svn path=/trunk/KDE/kdebase/workspace/; revision=854107
2008-08-28 20:43:40 +00:00
Luboš Luňák
7704c8f3fa
Apparently it is possible to switch compositing between starting
...
and getting a zero-timeout timer.
svn path=/trunk/KDE/kdebase/workspace/; revision=852355
2008-08-25 19:49:42 +00:00
Luboš Luňák
14ae8d2dc9
Support for unredirecting fullscreen windows, i.e. games etc. can paint directly
...
and not be slowed down by going through compositing. Turned on and no UI option
in the naive hope that it won't cause any real problems. Maybe effects doing
window previews should get API to suspend unredirect though.
svn path=/trunk/KDE/kdebase/workspace/; revision=851742
2008-08-24 13:32:57 +00:00
Luboš Luňák
09d81b7e87
Cache the result of XQueryTree().
...
svn path=/trunk/KDE/kdebase/workspace/; revision=851667
2008-08-24 10:35:45 +00:00
Luboš Luňák
ffc4bc5040
Make sure idling does not actually cause big load by a repeating
...
quick timer caused by dynamically adjusting the next repaint
when using vsync. Ideally there should be no idle ticks at all,
somewhen later.
BUG: 154270
CCBUG: 155694
svn path=/trunk/KDE/kdebase/workspace/; revision=850941
2008-08-22 15:57:31 +00:00
Luboš Luňák
49660876c1
When confirming compositing in the configuration module,
...
wait for KWin to initialize it and report if it fails.
FEATURE: 161900
svn path=/trunk/KDE/kdebase/workspace/; revision=847403
2008-08-15 11:09:07 +00:00
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