Hugo Pereira Da Costa
92bea91686
- moved rendering of antialiased corners from Oxygen::ShadowCache to Oxygen::Client.
...
- simplified caching of ShadowCache accordingly. Notably, it should make it easier to pass the shadows to kwin.
- removed unnecessary QPainter::save()/restore() calls
- set painter AntiAliasing render hint earlier in Client::paintEvent
- modified drawing of drop target rect accordingly.
- oh. And fixed krazy warnings.
svn path=/trunk/KDE/kdebase/workspace/; revision=1217439
2011-01-27 09:40:48 +00:00
Hugo Pereira Da Costa
469ec8e686
Fixed logic for left/right bounding of titleRect.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1210067
2010-12-29 10:40:17 +00:00
Hugo Pereira Da Costa
796e7ff92a
Properly account for window's shaded state, and number of clients in groups when deciding whether or
...
not the titlebar should be hidden. This is half the job, cause the above does not work (yet) when
grouping windows among which one has hidden titlebar. Shading works well now, though.
CCBUG: 260815
svn path=/trunk/KDE/kdebase/workspace/; revision=1208187
2010-12-20 22:18:52 +00:00
Hugo Pereira Da Costa
881a43a191
Changed 'drawSeparator' boolean value into a combobox, for which 3 choices are available:
...
- never draw separator
- draw separator when window is active
- always draw separator.
This is usefull for e.g. firefox, when a flat background is used, in which case one might
want the separator to always be enabled.
svn path=/trunk/KDE/kdebase/workspace/; revision=1182027
2010-10-03 02:22:56 +00:00
Hugo Pereira Da Costa
1adaf8c8ea
remove use of QWeakPointer for the itemAnimationData_ object as it is unnecessary: the object is never used outside of the class
...
and is a child of the client, deleted in the client destructor, by Qt.
svn path=/trunk/KDE/kdebase/workspace/; revision=1170328
2010-08-31 14:30:17 +00:00
Hugo Pereira Da Costa
6309ac1928
OxygenClient: remove use of QWeakPointer for the glowAnimation_ as it is unnecessary: the object is never used outside of the class
...
and is a child of the client, deleted in the client destructor, by Qt.
Client, Button: removed useless acessor to the glowAnimation pointer.
svn path=/trunk/KDE/kdebase/workspace/; revision=1170327
2010-08-31 14:24:01 +00:00
Hugo Pereira Da Costa
2947ec516b
- Simplified titleBar title color handling, moved to oxygenHelper, and cached.
...
- added some missing consts in Client.
svn path=/trunk/KDE/kdebase/workspace/; revision=1169247
2010-08-28 19:58:22 +00:00
Hugo Pereira Da Costa
18042bba95
removed all connections to QPropertyAnimation::valueChanged() and call relevant update in the 'setValue' method directly, instead
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1168989
2010-08-28 02:52:26 +00:00
Hugo Pereira Da Costa
80757b158f
more cliprect fixing
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1155774
2010-07-28 02:23:14 +00:00
Hugo Pereira Da Costa
5ce103a6e6
- fixed rendering glitch because updateTitleRect had too small clip region
...
- moved check on titleOutline to dedicated inline function
- removed some trailing spaces.
svn path=/trunk/KDE/kdebase/workspace/; revision=1155744
2010-07-28 01:07:47 +00:00
Hugo Pereira Da Costa
8762a1ac55
Tried improve performances during title transitions by triggering updates of the title area only.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1154145
2010-07-24 21:45:25 +00:00
Hugo Pereira Da Costa
24e01d0e7b
Removed dependency of Oxygen::ShadowCache upon Oxygen::Client.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1126021
2010-05-12 23:34:31 +00:00
Hugo Pereira Da Costa
56095681ed
changed helper.h/.cpp into oxygendecohelper.h/.cpp for consistency with classname.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1121943
2010-05-02 18:50:01 +00:00
Hugo Pereira Da Costa
43d7384663
oxygen.h/.cpp renamed to oxygenfactory.h/.cpp for consistency.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1121941
2010-05-02 18:38:05 +00:00
Hugo Pereira Da Costa
c5bf8d012e
Changed all "Oxygen::OxygenXXX" classnames into "Oxygen::XXX" for consistancy with style class
...
naming scheme. Also made indentation consistent.
svn path=/trunk/KDE/kdebase/workspace/; revision=1121935
2010-05-02 18:34:08 +00:00
Hugo Pereira Da Costa
4d33600a19
Revert r1101759, after discussion with Lubos and Nuno. Will work on having stronger glow for close button, and possibly reduce button hit area as an alternative
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1102002
2010-03-11 15:24:28 +00:00
Hugo Pereira Da Costa
a733f36b2e
Removed customized default buttons layout
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1101759
2010-03-10 21:01:21 +00:00
Hugo Pereira Da Costa
bfa031170e
Removed use of kglobalsettings to decide whether animations should be enabled or not.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1100594
2010-03-08 00:29:00 +00:00
Hugo Pereira Da Costa
8d1314a26b
added local oxygendecohelper, that derives from libs/oxygen/oxygenhelper and implements methods used here but not in the style. Modified relevant headers accordingly
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1099028
2010-03-04 22:49:18 +00:00
Aaron J. Seigo
bfbe44dacc
* move kstyles from runtime into workspace
...
* make a proper library out of the oxygen helper lib
* make the oxygen widget and kwin style link against it
svn path=/trunk/KDE/kdebase/workspace/; revision=1097791
2010-03-02 03:40:34 +00:00
Hugo Pereira Da Costa
935b40d436
Use KGlobalSettings::graphicEffectsLevel in conjunction with OxygenConfiguration to
...
determine if animations should be enabled.
This allows to turn off all animations if the "graphical effects" combobox in
"systemsettings->appearance->style->fine tunning" is set to either
- Low display resolution and low CPU
- High display resolution and low CPU
BUG: 226668
svn path=/trunk/KDE/kdebase/workspace/; revision=1090208
2010-02-14 21:59:14 +00:00
Hugo Pereira Da Costa
58b8722a6b
fixed calculation of title bounding rects when there is only one title being shown, to avoid issues when smooth title transition is enabled
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1088001
2010-02-09 23:07:34 +00:00
Hugo Pereira Da Costa
c04cc31fa2
fixed title bounding rect conflict with window buttons when dragging a tab away from (or back in) a 2-tabs window, with the second tab title being very long
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1078906
2010-01-23 06:59:55 +00:00
Hugo Pereira Da Costa
f98c1f875c
added dedicated option to enable/disable window title change animation, and disabled it by default.
...
It can be reenabled by adding "AnimateTitleChange=true" in oxygenrc under [Windeco].
svn path=/trunk/KDE/kdebase/workspace/; revision=1070564
2010-01-06 01:42:38 +00:00
Hugo Pereira Da Costa
80b5f81f72
Moved title transitin handling to separate class (oxygentitleanimationdata).
...
Use blended pixmaps to do the transition instead of QPainter::drawText with alpha blended colors.
This fixes glitches when title is changed while animation is running. (thanks to Wilder for reporting).
svn path=/trunk/KDE/kdebase/workspace/; revision=1063441
2009-12-18 15:20:04 +00:00
Hugo Pereira Da Costa
c5c464226d
changed painting order of old/new caption and embossed/main text when title text transition is called, to avoid flicker. Also removed automatic text elision on old caption
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1062149
2009-12-13 23:24:36 +00:00
Hugo Pereira Da Costa
4b6c98b7ac
use bias to set window state glow intensity and have emulate faster responding animations
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1050705
2009-11-17 22:26:36 +00:00
Hugo Pereira Da Costa
045daadccb
used external lib/oxygenanimation class to handle animations in place of QTimeLine. This will make transition to Qt Kinetic easier
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1050690
2009-11-17 21:56:04 +00:00
Hugo Pereira Da Costa
14ffab1aa5
more tab glitches fixed. Use full-width, and hide buttons and separator when there is only one tab left at drag-leave
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1049363
2009-11-15 07:27:49 +00:00
Hugo Pereira Da Costa
51374ce5db
added a 50ms timer when creating drag to force animation when dragMove and dragLeave events are lost
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1049358
2009-11-15 06:28:40 +00:00
Lucas Murray
a0d07d12a2
Merged r970865:1049322 from /branches/work/kwin-tabbing
...
Adds window tabbing support to KWin.
FEATURE: 42023
svn path=/trunk/KDE/kdebase/workspace/; revision=1049334
2009-11-15 03:24:04 +00:00
Hugo Pereira Da Costa
3c63918fd5
removed useless active flag from 'titlebarcontrastcolor'
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1048900
2009-11-14 05:19:40 +00:00
Hugo Pereira Da Costa
9ff89e1768
Added contrast pixel on titlebar text. This creates 'carved-in' font, as a possible replacement to bold.
...
Implemented after discussion with pinheiro.
svn path=/trunk/KDE/kdebase/workspace/; revision=1048886
2009-11-14 04:19:09 +00:00
Hugo Pereira Da Costa
f08d982b15
- made distance between window border and first button smaller by 2 pixels
...
- set default spacing between buttons to 3 pixels
- added 'hidden' option to disable the above
- removed extra spacing before close button in default button layout, since the 3
pixels above should be enough
svn path=/trunk/KDE/kdebase/workspace/; revision=1047309
2009-11-10 23:11:08 +00:00
Hugo Pereira Da Costa
d4344b7bba
added the possibility to hide decoration 'titlebar', but not decoration 'border' in window-specific override rules
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1046005
2009-11-07 03:33:53 +00:00
Hugo Pereira Da Costa
f761aceb8b
removed background window rendering from button paintEvent, as transparent background is good enough. Moved all corresponding method in oxygenClient to 'protected'. This allows faster repaint.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1036357
2009-10-17 06:57:17 +00:00
Hugo Pereira Da Costa
e26538e368
port design changes from tabbing branch to trunk: new title outline design; simplification of layout metrics; proper handling of text ellision; simplification of shadow cache; addition of to local button types. In oxygen.h also temporarily added missing enumeration to ease compilation against kde4.3
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1035658
2009-10-15 16:03:30 +00:00
Hugo Pereira Da Costa
e748b5244b
More code cleanup: moved declaration of 'reduceContrast' and 'renderDot' global functions to oxygenclient.h. Added 'renderFlags' to control which part of the button is to be drawn. Also added flag to force button as 'inactive' even if belonging to an active window (needed for window tabs)
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1035241
2009-10-14 15:36:08 +00:00
Hugo Pereira Da Costa
f898d1193f
more cleanup. Made sure methods are declared and implemented in the same order (blush)
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1035206
2009-10-14 14:37:58 +00:00
Hugo Pereira Da Costa
01ae18d6a7
moved dots and float frame rendering to separate methods (for clean-up and to make merging with tab branch easier)
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1035200
2009-10-14 14:28:37 +00:00
Hugo Pereira Da Costa
7f6ff0dd02
removed usage of static global variables (static is bad afaik). Everything is controled by the factory.
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1034554
2009-10-13 01:45:01 +00:00
Hugo Pereira Da Costa
c5641a3827
modified activeChange animation so that it seems to start earlier (e.g. with first step being a non-zero fraction of the final glow)
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1034229
2009-10-12 07:26:07 +00:00
Hugo Pereira Da Costa
6532a7445c
re-enabled shadow transitions (disabled due to a bug in logics)
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1032348
2009-10-07 15:38:18 +00:00
Hugo Pereira Da Costa
3e7a0f9fce
fixed bug on title alignment when left/right centered, and put titleRect calculation in separate method for clean-up
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1031796
2009-10-06 05:35:24 +00:00
Hugo Pereira Da Costa
e03269be68
moved title text bounding rect calculation to separate dedicated method
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1031121
2009-10-04 01:36:14 +00:00
Hugo Pereira Da Costa
e7cdbe7e0d
added 'use animations' and 'animations duration' to configuration (although not shown in configuration dialog). added smooth fading of window title when changed
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1030276
2009-10-02 02:52:41 +00:00
Hugo Pereira Da Costa
edf8167f3c
improved animated transition in title-outline mode, by using mixed color rather than painter opacity
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1028173
2009-09-26 04:57:27 +00:00
Hugo Pereira Da Costa
aedaa73dc4
Fixed painting of maximized shaded window to show bottom border and shadow.
...
BUG: 207926
svn path=/trunk/KDE/kdebase/workspace/; revision=1026061
2009-09-20 17:51:06 +00:00
Hugo Pereira Da Costa
b4f63cb440
fixed Qt headers; removed WX11 defines; removed 'using namespace std'
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1025937
2009-09-20 07:42:03 +00:00
Hugo Pereira Da Costa
d581847b47
always enable 'smooth' transitions except for 'preview'. This allows to have smooth title bar text color transition even if everything (compositing, glow, separator, etc.) is disabled
...
svn path=/trunk/KDE/kdebase/workspace/; revision=1025845
2009-09-19 21:11:28 +00:00