Summary: | Make CSS scrollbars support :hover and :active | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Dave Hyatt <hyatt> | ||||
Component: | CSS | Assignee: | Dave Hyatt <hyatt> | ||||
Status: | RESOLVED FIXED | ||||||
Severity: | Normal | ||||||
Priority: | P2 | ||||||
Version: | 528+ (Nightly build) | ||||||
Hardware: | Mac | ||||||
OS: | OS X 10.5 | ||||||
Attachments: |
|
Description
Dave Hyatt
2008-10-10 12:00:54 PDT
Created attachment 24269 [details]
Patch
Comment on attachment 24269 [details]
Patch
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.
|