Commit graph

48 commits

Author SHA1 Message Date
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
Hugo Pereira Da Costa
c955d16574 added smooth transition for title bar text color when switching between active and inactive state (previously available for 'outline' mode only)
svn path=/trunk/KDE/kdebase/workspace/; revision=1025447
2009-09-18 19:47:53 +00:00
Hugo Pereira Da Costa
40ab147f81 moved more functions inline and use reference to pass configuration around.
svn path=/trunk/KDE/kdebase/workspace/; revision=1025142
2009-09-18 06:54:42 +00:00
Hugo Pereira Da Costa
ac90c3aef5 added missing flags to decide whether or not active/inactive transition should be animated
svn path=/trunk/KDE/kdebase/workspace/; revision=1025117
2009-09-18 02:20:43 +00:00
Hugo Pereira Da Costa
635c93bc5b Added smooth transition between active and inactive state. This affects (when enabled) the window shadow,
the horizontal separator line, the titlebar text color and the title+border window outline. 


svn path=/trunk/KDE/kdebase/workspace/; revision=1025111
2009-09-18 01:32:27 +00:00
Hugo Pereira Da Costa
9eec5543bf Moved all shadow handling into global cache oxygenShadowCache. This allows to share same
shadow tilesets between clients, thus reducing the memory usage; to simplify the oxygenclient
class; and leave room for optimizing active/inactive shadow transitions. The global class is
declared using K_GLOBAL_STATIC_WITH_ARGS.

Also cleaned-up unnecessary headers.


svn path=/trunk/KDE/kdebase/workspace/; revision=1025063
2009-09-17 22:40:06 +00:00
Hugo Pereira Da Costa
c5c7cd79d6 used OxygenShadowConfigration rather than shadowTileOption to detect if shadowTiles are to be recreated, because the latter was both incomplete and redundant with the former.
svn path=/trunk/KDE/kdebase/workspace/; revision=1024657
2009-09-17 05:07:43 +00:00
Hugo Pereira Da Costa
8244e7644f Changed nitrogen class names and file names into oxygen; adding Oxygen namespace where missing; updated CMakeFiles.txt accordingly
svn path=/trunk/KDE/kdebase/workspace/; revision=1023654
2009-09-15 07:12:54 +00:00
Hugo Pereira Da Costa
c7f4edf5e1 Removed oxygen decoration
svn path=/trunk/KDE/kdebase/workspace/; revision=1023633
2009-09-15 05:36:30 +00:00
Huynh Huu Long
c054eac3f7 Prevent shadows from being drawn when windows are maximized which causes some visual problems on multi monitor settings.
Also clean up some code duplication.

svn path=/trunk/KDE/kdebase/workspace/; revision=984209
2009-06-20 13:28:55 +00:00
Huynh Huu Long
18660b90eb Update shadow/glow tiles when any option changes
Fix window mask for non-composited windows

svn path=/trunk/KDE/kdebase/workspace/; revision=980471
2009-06-11 20:09:36 +00:00
Martin Gräßlin
e3f3b0386f Invalidate the shadow cache when active client changes.
svn path=/trunk/KDE/kdebase/workspace/; revision=980341
2009-06-11 14:27:28 +00:00
Huynh Huu Long
74cb4ddd81 Update the decoration to use KWin´s new API
Things to take care of:
* the shadow caching code has to be revised
* shadows sometimes don´t redraw correctly
* error messages like: Couldn't resolve property: linearGradient4203


svn path=/trunk/KDE/kdebase/workspace/; revision=979988
2009-06-10 21:02:50 +00:00
Huynh Huu Long
e1870fd8bb Rename scratch to stripes which is also used for the config dialog
Prevent stripes to go beyond the title area. We might need a replacement
for these cases
BUG: 182832

svn path=/trunk/KDE/kdebase/workspace/; revision=937674
2009-03-10 10:46:02 +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
Huynh Huu Long
d0d1369a1a adjust the scratches for maximized windows
svn path=/trunk/KDE/kdebase/workspace/; revision=812950
2008-05-26 18:01:53 +00:00
Huynh Huu Long
7d0bd3567a colored lines added to improve visibility of active windows
svn path=/trunk/KDE/kdebase/workspace/; revision=812922
2008-05-26 16:21:49 +00:00
Luboš Luňák
9fcd3ad674 Fix shaping - KCommonDecoration has a function where to do it,
and I don't see the point in resetting the shape every time in paintEvent().
Partially fixes resizing problems with Qt4.4.


svn path=/trunk/KDE/kdebase/workspace/; revision=782673
2008-03-05 17:48:45 +00:00
Aaron J. Seigo
9048abe173 take advantage of KDecorationOptions::defaultTitleButtons[Left|Right]
svn path=/trunk/KDE/kdebase/workspace/; revision=737210
2007-11-15 20:14:41 +00:00
Casper Boemann
a454357d4e Paint buttons of inactive windows different too
Prepare for caching of those colors - doesn't connect to actual KGS
signal yet - so are never invalidated


svn path=/trunk/KDE/kdebase/workspace/; revision=726729
2007-10-18 19:09:41 +00:00
Matthew Woehlke
3aa0759a24 first crack at intelligently fading out inactive text
svn path=/trunk/KDE/kdebase/workspace/; revision=726717
2007-10-18 18:09:31 +00:00
Matthew Woehlke
cb8d764ba1 Keep around the helper as a reference member of OxygenClient and OxygenButton, instead of having two global statics. Also refer to the client (from the button) as a reference to ensure that it exists (namely, so that we can grab our own reference to its helper).
svn path=/trunk/KDE/kdebase/workspace/; revision=723558
2007-10-10 00:05:24 +00:00
Casper Boemann
f5c53e76d6 change windec to inherit kcommondecoration, which brings us several
pleasenties

svn path=/trunk/KDE/kdebase/workspace/; revision=713524
2007-09-17 18:16:26 +00:00
Casper Boemann
fb78c8f6ad update windec to have same background as new style
get rid of xrender stuff
did this to get smooth painting:
    widget()->setAttribute( Qt::WA_PaintOnScreen, false);



svn path=/trunk/KDE/kdebase/workspace/; revision=688425
2007-07-16 02:12:45 +00:00
Casper Boemann
994a11916c Move it correctly this time
svn path=/trunk/KDE/kdebase/workspace/; revision=676058
2007-06-15 20:48:52 +00:00