Make scrollbars support :hover and :active
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.
Fixed in r37486.