[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-bugs-dist
Subject:    [Bug 199975] Issues in Album view on Windows
From:       "Michael G.Hansen" <mike () mghansen ! de>
Date:       2009-11-30 22:15:30
Message-ID: 20091130221531.064392863B () immanuel ! kde ! org
[Download RAW message or body]

https://bugs.kde.org/show_bug.cgi?id=199975





--- Comment #6 from Michael G. Hansen <mike mghansen de>  2009-11-30 23:15:25 ---
Created an attachment (id=38728)
 --> (http://bugs.kde.org/attachment.cgi?id=38728)
Screenshot of border debugging

Ok, this is how far I got:

if (option.state & QStyle::State_MouseOver)
{
    kDebug()<<"mouseover!!!";
    r = d->rect;
    p->setPen(QPen(option.palette.color(QPalette::Highlight), 3,
Qt::SolidLine));
    p->drawRect(1, 1, r.width()-3, r.height()-3);
} else
{
    kDebug()<<"NOT mouseover!!!";
    r = d->rect;
    p->setBrush(QBrush(Qt::black));
    p->setPen(QPen(Qt::green, 3, Qt::SolidLine));
    p->drawRect(1, 1, r.width()-3, r.height()-3);
}

With this code, all items are black with a green border by default (middle
icon). Mouse over the icon on the left and over the one on the right in the
screenshot -> it gets a blue border, debug output "mouseover". Move mouse away
-> debug output "NOT mouseover", but the blue border stays, and you can see
that the black brush is clipped to where the overlays are located, therefore
the border was not erased...

The black artefacts around the green border are drawn at the beginning of the
function with a width of 5, and also don't erase the background of the blue
border...

Now execute the same code under a user account where the staying-border-problem
does not occur, and there is no clipping, the black brush covers the entire
inside of the green border when the mouse is moved away.

So, how do we proceed?

Marcel: The State_HasFocus branch is executed when an item has been selected
with the mouse.

Michael

-- 
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic