Some applications like kwin suffer from heap fragmentation
when using the raster graphicssystem. This patch provides a function
that forces glibc to shrink the heap more often.
Now 5*pagesize(=20kB on a typical x86 system) of unused space at the
end of the heap are enough to force free()
to release this space. The default threshold is 128kB which is too much
for an average kworkspace application.
REVIEW: 101385
With raster a QPixmap is no longer a XPixmap which fails all code
which assumes that an QPixmap is an XPixmap. Depending on were in
the codebase we either convert such pixmaps to images (OpenGL) or
create a XPixmap and use QPixmap::fromX11Pixmap to get a "real"
pixmap.
It is possible that there are more code pathes were we would need
a XPixmap. Currently tested is basic functionality of no-compositing,
XRender compositing, OpenGl/GLX and OpenGL ES/EGL compositing.
For OpenGL compositing raster might result in performance improvements,
for XRender it is possible that there are regressions when using raster.
By default KWin uses whatever is the default of the system, so we just
no longer enforce native.
Of course it is a bad idea to use graphicssystem OpenGL. As that
is broken anyways in Qt, we do not check for it.
Many thanks to Philipp Knechtges for bringing up the issue, convincing
me that we need it and providing most of the patch.
REVIEW: 101132
CCMAIL: Philipp.Knechtges@rwth-aachen.de
For now there is autostart support on all screens and support for different resolutions on different screens.
Keyboard shortcuts are still TODO
REVIEW: 101125
BUG: 256242
what it is, so make official what has been so in reality for some time:
Martin is the maintainer.
CCMAIL: kwin@kde.org
svn path=/trunk/KDE/kdebase/workspace/; revision=1194646
Every disorder causes every duration, which ensures the one that stays.
reality is relative. natural is disorder.
[R]obinhood[P]andey
Merging scripting from
^/branches/work/kwin_scripting TO
^/trunk
svn path=/trunk/KDE/kdebase/workspace/; revision=1177865
to a branch, but instead committed to the trunk. Well, the trunk was
broken because not all files were committed and hence anyone who checked
out of the trunk during this time could not have built kwin.
From what I can gather, the trunk has been broken for around 45 minutes
now. I didn't realize all that while that the trunk was broken. I
apologize for the inconvinience and I deeply regret my actions which
were clearly not well-thought.
Sorry,
Rohan
svn path=/trunk/KDE/kdebase/workspace/; revision=1133013
main.cpp : Added a command argument. If 'stest' is set, then a testing
environment is setup which is used to test scripting for kwin.
Currently, the test setup only consists of loading a default script, but
in the feature it is expected to run a small text editor kind of thing
for testing.
Usage:
kwin --stest
CMakeLists.txt : Add the files corresponding to kwin_scripting the main
intention of which is to provide scripting support for kwin.
kwintabbox.desktop : An unintentional edit. Mostly harmless.
svn path=/trunk/KDE/kdebase/workspace/; revision=1133002
use direct rendering.
- Move the LIBGL_ALWAYS_INDIRECT code to CompositingPrefs::detect(), and use
the external helper program to determine if the variable needs to be set.
svn path=/trunk/KDE/kdebase/workspace/; revision=1096554
to work correctly but as doing it there defeats the purpose of moving
the code to begin with there's no point in moving it.
BUG: 226049
svn path=/trunk/KDE/kdebase/workspace/; revision=1088054
startup. It dates so back in history that the KWM commit
message is completely useless and I see no point in that,
it can just needlessly make kwin abort because of a harmless
X error e.g. in libGL. Real problems should be handled
explicitly wherever they happen.
svn path=/trunk/KDE/kdebase/workspace/; revision=1007362
actually require current qt-copy (which is more or less 4.5) in trunk.
Quick & dirty runtime Qt version detection copied from Thiago's code in
kcmdlineargs.cpp.
svn path=/trunk/KDE/kdebase/workspace/; revision=926646
at the same time (in other words, only when activating compositing using the kcm).
Currently selfcheck causes bad flicker (due to X mapping the overlay window
for too long?) which looks bad during KDE startup. With this patch, KDE startup
is without any flicker.
svn path=/trunk/KDE/kdebase/workspace/; revision=923842
for the following commit.
If there will be any problems during KWin startup because of this please yell.
svn path=/trunk/KDE/kdebase/workspace/; revision=923838
KWIN_DIRECT_GL=1. This should allow fglrx users to use shader effects.
This should really be done automatically by testing to see whether the
required extensions are available when in indirect mode first, then
falling back to direct mode and trying again.
CCBUG: 173556
svn path=/trunk/KDE/kdebase/workspace/; revision=895696
- setting LIBGL_ALWAYS_INDIRECT=1, as that seems to be required for texture_from_pixmap
to work with AIGLX
- setting __GL_YIELD=NOTHING to noticeably improve smoothness with nVidia
svn path=/trunk/KDE/kdebase/workspace/; revision=749631
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
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