The effect did not check whether the ShaderManager is valid causing
a null pointer access when trying to use the shader.
Additionally this change moves the Shader init into the close window
slot as close window referrenced windows without checking whether the
effect would work. If the effect would not work each closed window
would be referrenced without any chance to being unreffed again as this
code is in a block checking whether the effect is valid.
BUG: 291390
FIXED-IN: 4.8.0
This is a condensed version of Martin's patch that fixes a high cpu
usage in KWin and X. It seems to be due to a window being created and
deleted at almost the same time, such that the fade effect never quits.
The bug was reliably reproducable with starting Amarok.
CCBUG: 290025
CCBUG: 288948
This patch reduces the number of QRegion and WindowQuadList operations
by drawing the opaque and translucent parts of the window within the
same bottom to top pass.
REVIEW: 103671
For this properties are defined in ClientGroup and several methods
are changed to be slots (to be invokable from scripts). On Client
the clientGroup is exported as a property.
The existing wrapper around ClientGroup is dropped as it is no
longer needed. Interestingly it was wrong anyway as it allowed to
construct a new ClientGroup, which has to be done internally.
At the same time the meta declarations get cleaned up a little bit.
This should be the last of the bunch...it was split up so it could be
easily reverted/looked at.
The idea is that all of this will improve searching functionality for a
lot of people using System Settings. That's the hope anyways.
In reality it doesn't help much *yet*, because somebody needs to make
the search functionality search for more .desktop files. It currently
only does main ones afik. I don't know if this is a technical
limitation, or just a minor oversight and perhaps something easy to fix.
Hopefully what I've done is towards a good direction though, of
improving search functionality in system settings...