Bug 304868

Summary: Broken focus decoration of buttons
Product: [Plasma] Oxygen Reporter: JohnnyBaloney <itdev>
Component: generalAssignee: Hugo Pereira Da Costa <hugo.pereira.da.costa>
Status: RESOLVED FIXED    
Severity: normal CC: hugo.pereira.da.costa, itdev
Priority: NOR    
Version: 4.0   
Target Milestone: ---   
Platform: Fedora RPMs   
OS: Linux   
URL: http://www.plunder.com/Fedora-focus-outline-download-MHGN1Z372D.htm
Latest Commit: Version Fixed In: 4.9.1

Description JohnnyBaloney 2012-08-09 16:33:01 UTC
In 'Colors - KDE Control Module' when I change both 'Focus Decoration' and 'Hover Decoration' to #000000 the focusing breaks - every time a button gets focus (or you hover over it) the outline disappears immediately. But change the colour of both to #000001 and it works as it should. See the screencast under the link provided.

Reproducible: Always

Steps to Reproduce:
See the screencast.
Comment 1 Hugo Pereira Da Costa 2012-08-27 22:23:25 UTC
yes. Can reproduce.
Investigating.
Comment 2 Hugo Pereira Da Costa 2012-08-29 12:54:42 UTC
Git commit 75bee8ed899be910f0addaedfcae1fa6e29bfc82 by Hugo Pereira Da Costa.
Committed on 29/08/2012 at 14:51.
Pushed by hpereiradacosta into branch 'KDE/4.9'.

properly deal with invalid colors when calculating cache keys.
using color.rgba() for an invalid color corresponds to solid black, which in turns conflicts with the cache
value for such color. We use "transparent black" instead.

M  +15   -15   kstyles/oxygen/oxygenstylehelper.cpp
M  +3    -3    kwin/clients/oxygen/oxygendecohelper.cpp
M  +15   -15   libs/oxygen/oxygenhelper.cpp
M  +5    -1    libs/oxygen/oxygenhelper.h

http://commits.kde.org/kde-workspace/75bee8ed899be910f0addaedfcae1fa6e29bfc82
Comment 3 Hugo Pereira Da Costa 2012-08-29 12:54:43 UTC
Git commit 63cbbabdedb77ecb12840612a6316b16ab666526 by Hugo Pereira Da Costa.
Committed on 29/08/2012 at 14:51.
Pushed by hpereiradacosta into branch 'master'.

properly deal with invalid colors when calculating cache keys.
using color.rgba() for an invalid color corresponds to solid black, which in turns conflicts with the cache
value for such color. We use "transparent black" instead.

M  +15   -15   kstyles/oxygen/oxygenstylehelper.cpp
M  +3    -3    kwin/clients/oxygen/oxygendecohelper.cpp
M  +15   -15   libs/oxygen/oxygenhelper.cpp
M  +5    -1    libs/oxygen/oxygenhelper.h

http://commits.kde.org/kde-workspace/63cbbabdedb77ecb12840612a6316b16ab666526
Comment 4 Hugo Pereira Da Costa 2012-08-29 12:55:26 UTC
... was tricky, but is fixed.
Thanks for reporting.
Comment 5 JohnnyBaloney 2012-08-29 18:42:46 UTC
Great, thanks for the quick fix!