Bug 21527 - Make CSS scrollbars support :hover and :active
: Make CSS scrollbars support :hover and :active
Status: RESOLVED FIXED
: WebKit
CSS
: 528+ (Nightly build)
: Macintosh Mac OS X 10.5
: P2 Normal
Assigned To:
:
:
:
:
  Show dependency treegraph
 
Reported: 2008-10-10 12:00 PST by
Modified: 2008-10-10 12:33 PST (History)


Attachments
Patch (15.38 KB, patch)
2008-10-10 12:01 PST, Dave Hyatt
aroben: review+
Review Patch | Details | Formatted Diff | Diff


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2008-10-10 12:00:54 PST
Make scrollbars support :hover and :active
------- Comment #1 From 2008-10-10 12:01:16 PST -------
Created an attachment (id=24269) [details]
Patch
------- Comment #2 From 2008-10-10 12:17:13 PST -------
(From update of attachment 24269 [details])
Can you comment on the changes to :not handling in the ChangeLog?

 2394         case CSSSelector::PseudoHover: {
 2395             ScrollbarPart hoveredPart = scrollbar->hoveredPart();
 2396             if (part == ScrollbarBGPart)
 2397                 return hoveredPart != NoPart;
 2398             if (part == TrackBGPart)
 2399                 return hoveredPart == BackTrackPart || hoveredPart == ForwardTrackPart || hoveredPart == ThumbPart;
 2400             return part == hoveredPart;
 2401         }
 2402         case CSSSelector::PseudoActive: {
 2403             ScrollbarPart pressedPart = scrollbar->pressedPart();
 2404             if (part == ScrollbarBGPart)
 2405                 return pressedPart != NoPart;
 2406             if (part == TrackBGPart)
 2407                 return pressedPart == BackTrackPart || pressedPart == ForwardTrackPart || pressedPart == ThumbPart;
 2408             return part == pressedPart;
 2409         }

Maybe it's worth putting this code into a function so we don't have to duplicate it?

 99 void RenderScrollbar::setPressedPart(ScrollbarPart part)
 100 {
 101     ScrollbarPart oldPart = m_pressedPart;

Should we check part != m_pressedPart before continuing?

r=me if you land a manual test with it.
------- Comment #3 From 2008-10-10 12:33:09 PST -------
Fixed in r37486.