Commit graph

41 commits

Author SHA1 Message Date
Sandro Giessl
90a81cd6d3 Prevent double deletion of widgets that are managed by their QObject parents
but need to be managed by KCommonDecoration as well.
Thanks a lot Thomas, I went for "adjusted* b) (and fix c!)".

Feedback regarding 201404 would be great.

BUG: 201404

svn path=/trunk/KDE/kdebase/workspace/; revision=1013904
2009-08-21 07:25:58 +00:00
Lucas Murray
138179d06c Missed some functions in the decoration API cleanup.
svn path=/trunk/KDE/kdebase/workspace/; revision=984121
2009-06-20 04:22:39 +00:00
Lucas Murray
8d09ed341a Remove old decoration shadow API, rename AbilityProvidesShadow and add
support for the new decoration shadow API in the shadow effect.

svn path=/trunk/KDE/kdebase/workspace/; revision=980130
2009-06-11 08:11:13 +00:00
Laurent Montel
d7ecbaa14d Pedantic
svn path=/trunk/KDE/kdebase/workspace/; revision=963660
2009-05-05 06:25:35 +00:00
Fredrik Höglund
8bba7aed7d Make it possible for the decorations to paint outside the window frame
when compositing is enabled, by letting them add additional padding
to the sides of the frame.

svn path=/trunk/KDE/kdebase/workspace/; revision=963586
2009-05-04 22:35:33 +00:00
Lucas Murray
154c19b0e7 Make the client shadowOpacity() return a relative opacity instead of absolute.
svn path=/trunk/KDE/kdebase/workspace/; revision=873440
2008-10-19 13:43:16 +00:00
Lucas Murray
af1b639a9d Rename the new decoration API and mark it as unstable. Supporting a hacked API is suicide.
Will correctly handle this in KDE 4.3 by using ARGB decorations, even if it's not pretty.

svn path=/trunk/KDE/kdebase/workspace/; revision=872795
2008-10-18 08:10:37 +00:00
Lucas Murray
899d578c49 Merge Libkdecoration2 Git branch.
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
2008-10-17 10:30:43 +00:00
Lucas Murray
0cfe3b2c73 Fix indenting of decoration files.
svn path=/trunk/KDE/kdebase/workspace/; revision=863806
2008-09-23 07:54:28 +00:00
Luboš Luňák
3c3b5f4b2d Split kdecoration and kwineffects libraries as two modules for doxygen.
svn path=/trunk/KDE/kdebase/workspace/; revision=762274
2008-01-16 18:13:24 +00:00
Luboš Luňák
0170623a9c Separate KCommonDecoration from KDecoration, in order to allow
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
2007-11-29 14:11:02 +00:00
Luboš Luňák
74b89e491d Revert r741298 - this time the right fix for -Woverloaded-virtual is fixing
the base class.
CCMAIL: montel@kde.org


svn path=/trunk/KDE/kdebase/workspace/; revision=741860
2007-11-26 16:00:21 +00:00
Aaron J. Seigo
16e3e5581e * make defaultButtonsLeft and defaultButtonsRight non-pure-virtual so that client plugins that want to just go along with the kde defaults can do so and don't need to reimplement these methods; this is SC, but not BIC
* use defaulTitleButtons[Left|Right] instead of hardcoding those values

svn path=/trunk/KDE/kdebase/workspace/; revision=737209
2007-11-15 20:13:50 +00:00
Pino Toscano
0b6477e90e use QtModule/QFoo includes
svn path=/trunk/KDE/kdebase/workspace/; revision=687972
2007-07-14 22:40:00 +00:00
Luboš Luňák
6081a9f0a8 Merging from old trunk:
r637475 | mueller | 2007-02-26 16:46:23 +0100 (Mon, 26 Feb 2007) | 2 lines

header cleanness++


svn path=/trunk/KDE/kdebase/workspace/; revision=659554
2007-04-30 12:08:47 +00:00
Luboš Luňák
0bb63f90e9 Compile.
svn path=/trunk/KDE/kdebase/workspace/; revision=659536
2007-04-30 11:50:32 +00:00
Luboš Luňák
79ab08b9e9 Merging from old trunk:
r629104 | hausmann | 2007-02-01 12:40:13 +0100 (Thu, 01 Feb 2007) | 2 lines

Don't crash due to a missing Q_OBJECT macro


svn path=/trunk/KDE/kdebase/workspace/; revision=659531
2007-04-30 11:45:52 +00:00
Luboš Luňák
80e6a05440 Merging from old trunk:
r595998 | lunakl | 2006-10-16 14:41:38 +0200 (Mon, 16 Oct 2006) | 3 lines

Fix two same argument names.


svn path=/trunk/KDE/kdebase/workspace/; revision=659293
2007-04-29 22:01:59 +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
Tim Beaulen
04d80e9d05 Build
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
2007-03-08 21:37:13 +00:00
Dirk Mueller
5cd482868b header cleanness++
svn path=/trunk/KDE/kdebase/workspace/; revision=637475
2007-02-26 15:46:23 +00:00
Simon Hausmann
992f2ee6b9 Don't crash due to a missing Q_OBJECT macro
svn path=/trunk/KDE/kdebase/workspace/; revision=629104
2007-02-01 11:40:13 +00:00
Luboš Luňák
31c7372e51 Fix two same argument names.
svn path=/trunk/KDE/kdebase/workspace/; revision=595998
2006-10-16 12:41:38 +00:00
Sandro Giessl
fdb1b61473 Make kwin decorations API free of Qt3 support members
svn path=/trunk/KDE/kdebase/workspace/; revision=515804
2006-03-04 22:27:27 +00:00
Matt Broadstone
5da7024486 rid ourselves of the Q3Buttons
svn path=/trunk/KDE/kdebase/kwin/; revision=449967
2005-08-17 09:15:59 +00:00
Stephan Kulow
b464518b3c svn merge svn+ssh://coolo@svn.kde.org/home/kde/trunk/KDE/kdebase@438057
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
2005-07-28 14:59:42 +00:00
Adriaan de Groot
630af25d7b Dox fixes: remember to name parameters the same as in superclasses; escape html special chars; add more cross-refs.
svn path=/trunk/KDE/kdebase/kwin/; revision=427022
2005-06-19 08:19:36 +00:00
Luboš Luňák
fc90a04635 Make it possible to do all kinds of strange things when mousewheeling
the titlebar or Alt+mousewheeling the window.
FEATURE:44318
FEATURE:66519
FEATURE:76188


svn path=/trunk/KDE/kdebase/kwin/; revision=410058
2005-05-06 15:20:49 +00:00
Sandro Giessl
46482b1d0e improved calcHiddenButtons()
svn path=/trunk/kdebase/kwin/; revision=400782
2005-03-26 16:26:31 +00:00
Sandro Giessl
286696268e - add LM_ButtonMarginTop for more control on how to position buttons.
- 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
2005-03-26 13:09:52 +00:00
Stephan Binner
ca22bd2f4e compile (with builddir!=srcdir)
svn path=/trunk/kdebase/kwin/; revision=399977
2005-03-23 12:42:34 +00:00
Sandro Giessl
8ee563139d um... fix titleRect()
svn path=/trunk/kdebase/kwin/; revision=399602
2005-03-22 00:15:29 +00:00
Sandro Giessl
1b1d7df406 more const-correctness and titleRect() convenience method...
svn path=/trunk/kdebase/kwin/; revision=399599
2005-03-21 23:45:54 +00:00
Sandro Giessl
079ac8c9f9 take the button width into account for the calculation of minBtnHideWidth
svn path=/trunk/kdebase/kwin/; revision=399466
2005-03-21 16:33:59 +00:00
Sandro Giessl
f1ad43864f - Add KCommonDecoration::isLeft() for Quartz.
- 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
2005-03-21 15:47:39 +00:00
Sandro Giessl
c77a4202fb inform buttons of state change
svn path=/trunk/kdebase/kwin/; revision=398989
2005-03-19 15:44:10 +00:00
Sandro Giessl
352beb9070 make reset abstract, add forgotten virtual...
svn path=/trunk/kdebase/kwin/; revision=397517
2005-03-14 11:54:49 +00:00
Sandro Giessl
7f9e658fb3 save reset calls in setSize() etc., inform buttons about what has changed in reset() so they can better optimize for performance
svn path=/trunk/kdebase/kwin/; revision=397485
2005-03-14 09:33:29 +00:00
Sandro Giessl
66ee8c3b4d add KWIN_EXPORT, thanks willem boschman
svn path=/trunk/kdebase/kwin/; revision=397197
2005-03-13 11:54:17 +00:00
Sandro Giessl
37992c3cb1 Import KCommonDecoration/KCommonDecorationButton. They ease development of decorations
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
2005-03-11 20:10:46 +00:00