WARNING: Breaks shadow effect. I don't think it causes anything to crash anymore but it is VERY ugly visually.
Contains:
- New decoration API that allows decorations to change the way shadows look.
- Shadows now wobble.
- API example code in the Oxygen decoration.
- Added buildQuads() effect plugin hook.
- Work on the shadow effect to use the new decoration shadow API as well.
- Added IDs to WindowQuads.
- Added public accessors to texture coords in WindowVertex.
Would like all this to be reviewed.
CCMAIL: kwin@kde.org
svn path=/trunk/KDE/kdebase/workspace/; revision=872473
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
The error I got:
[ 43%] Building CXX object workspace/kwin/lib/CMakeFiles/kdecorations.dir/kcommondecoration.o
/home/kde4-devel/qt-copy/include/QtGui/../../src/gui/widgets/qabstractbutton.h: In member function 'void QAbstractButton::qt_check_for_QOBJECT_macro(const T&) const
[with T = KCommonDecorationButton]':
/home/kde4-devel/qt-copy/include/QtCore/../../src/corelib/kernel/qobject.h:411: instantiated from 'T qobject_cast(QObject*) [with T = KCommonDecorationButton*]'
/home/kde4-devel/kde/src/kdebase/workspace/kwin/lib/kcommondecoration.cpp:203: instantiated from here
/home/kde4-devel/qt-copy/include/QtGui/../../src/gui/widgets/qabstractbutton.h:40: error: void value not ignored as it ought to be
make[2]: *** [workspace/kwin/lib/CMakeFiles/kdecorations.dir/kcommondecoration.o] Error 1
make[1]: *** [workspace/kwin/lib/CMakeFiles/kdecorations.dir/all] Error 2
svn path=/branches/work/kwin_composite/; revision=640708
svn+ssh://coolo@svn.kde.org/home/kde/branches/work/kde4/kdebase
.
I couldn't resolve one kicker conflict that results from different
development directions, so I rely on Aaron to sort it out - the file
is commited with conflicts
svn path=/trunk/KDE/kdebase/kwin/; revision=439627
- don't make layoutMetric() abstract, instead implement it with sane defaults
and let decorations fall back to it in case they can't handle a LayoutMetric
case...
svn path=/trunk/kdebase/kwin/; revision=400745
- Hide buttons one by another when the window size shrinks below a certain
width. Implemented so that Quartz doesn't use any functionality, but it's
quite useful in other decos, too -> enabled by default.
Minimum size calculation still needs some tweaking...
svn path=/trunk/kdebase/kwin/; revision=399463
by implementing parts of KDecoration which are error prone and common for most decorations.
Plastik will be ported to it. It should be possible to port at least Web, System++, RISC OS,
Quartz, Laptop, KStep, KDE 2, CDE easily - I will have a look at this some time. Perhaps also
Redmond, Modern System, Keramik, IceWM, Glow. I'm sure they will gain maintainability...
I'm open to discussions on the API...
CCMAIL: kwin@kde.org
svn path=/trunk/kdebase/kwin/; revision=396767