Changeset 92238 in webkit
- Timestamp:
- Aug 2, 2011, 3:11:30 PM (14 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r92237 r92238 1 2011-08-02 Sailesh Agrawal <sail@chromium.org> 2 3 Chromium: Update forked ScrollbarThemeChromiumMac.mm 4 https://bugs.webkit.org/show_bug.cgi?id=65555 5 6 Merge recent changes to ScrollbarThemeMac.mm to ScrollbarThemeChromiumMac.mm. 7 8 Reviewed by James Robinson. 9 10 * platform/chromium/ScrollbarOverlayUtilitiesChromiumMac.h: 11 * platform/chromium/ScrollbarOverlayUtilitiesChromiumMac.mm: 12 (wkScrollbarPainterSetEnabled): 13 * platform/chromium/ScrollbarThemeChromiumMac.h: 14 (WebCore::ScrollbarThemeChromiumMac::maxOverlapBetweenPages): 15 * platform/chromium/ScrollbarThemeChromiumMac.mm: 16 (WebCore::ScrollbarThemeChromiumMac::registerScrollbar): 17 (WebCore::ScrollbarThemeChromiumMac::setNewPainterForScrollbar): 18 (WebCore::toScrollbarPainterKnobStyle): 19 (WebCore::ScrollbarThemeChromiumMac::updateScrollbarOverlayStyle): 20 (WebCore::ScrollbarThemeChromiumMac::updateEnabledState): 21 (WebCore::ScrollbarThemeChromiumMac::paint): 22 1 23 2011-08-02 Mark Pilgrim <pilgrim@chromium.org> 2 24 -
trunk/Source/WebCore/platform/chromium/ScrollbarOverlayUtilitiesChromiumMac.h
r89326 r92238 62 62 int wkScrollbarMinimumThumbLength(WKScrollbarPainterRef); 63 63 void wkScrollbarPainterSetDelegate(WKScrollbarPainterRef, id scrollbarPainterDelegate); 64 void wkScrollbarPainterSetEnabled(WKScrollbarPainterRef, bool enabled); 64 65 CGFloat wkScrollbarPainterTrackAlpha(WKScrollbarPainterRef); 65 66 WKScrollbarPainterRef wkMakeScrollbarPainter(int controlSize, bool isHorizontal); -
trunk/Source/WebCore/platform/chromium/ScrollbarOverlayUtilitiesChromiumMac.mm
r89326 r92238 188 188 } 189 189 190 void wkScrollbarPainterSetEnabled(WKScrollbarPainterRef painter, bool enabled) 191 { 192 [painter setEnabled:enabled]; 193 } 194 190 195 CGFloat wkScrollbarPainterTrackAlpha(WKScrollbarPainterRef painter) 191 196 { -
trunk/Source/WebCore/platform/chromium/ScrollbarThemeChromiumMac.h
r89326 r92238 41 41 virtual ~ScrollbarThemeChromiumMac(); 42 42 43 virtual void updateEnabledState(Scrollbar*); 44 43 45 virtual bool paint(Scrollbar*, GraphicsContext* context, const IntRect& damageRect); 44 46 … … 47 49 virtual bool supportsControlTints() const { return true; } 48 50 virtual bool usesOverlayScrollbars() const; 51 virtual void updateScrollbarOverlayStyle(Scrollbar*); 49 52 50 53 virtual double initialAutoscrollTimerDelay(); … … 67 70 virtual IntRect trackRect(Scrollbar*, bool painting = false); 68 71 72 virtual int maxOverlapBetweenPages() { return 40; } 73 69 74 virtual int minimumThumbLength(Scrollbar*); 70 75 -
trunk/Source/WebCore/platform/chromium/ScrollbarThemeChromiumMac.mm
r91442 r92238 164 164 WKScrollbarPainterRef scrollbarPainter = wkMakeScrollbarPainter(scrollbar->controlSize(), isHorizontal); 165 165 scrollbarMap()->add(scrollbar, scrollbarPainter); 166 updateEnabledState(scrollbar); 167 updateScrollbarOverlayStyle(scrollbar); 166 168 } 167 169 … … 174 176 { 175 177 scrollbarMap()->set(scrollbar, newPainter); 178 updateEnabledState(scrollbar); 179 updateScrollbarOverlayStyle(scrollbar); 176 180 } 177 181 … … 219 223 else 220 224 return false; 225 } 226 227 static inline wkScrollerKnobStyle toScrollbarPainterKnobStyle(ScrollbarOverlayStyle style) 228 { 229 switch (style) { 230 case ScrollbarOverlayStyleDark: 231 return wkScrollerKnobStyleDark; 232 case ScrollbarOverlayStyleLight: 233 return wkScrollerKnobStyleLight; 234 default: 235 return wkScrollerKnobStyleDefault; 236 } 237 } 238 239 void ScrollbarThemeChromiumMac::updateScrollbarOverlayStyle(Scrollbar* scrollbar) 240 { 241 if (isScrollbarOverlayAPIAvailable()) { 242 wkSetScrollbarPainterKnobStyle(painterForScrollbar(scrollbar), toScrollbarPainterKnobStyle(scrollbar->scrollableArea()->scrollbarOverlayStyle())); 243 } 221 244 } 222 245 … … 425 448 } 426 449 427 static inline wkScrollerKnobStyle toScrollbarPainterKnobStyle(ScrollbarOverlayStyle style)428 {429 switch (style) {430 case ScrollbarOverlayStyleDark:431 return wkScrollerKnobStyleDark;432 case ScrollbarOverlayStyleLight:433 return wkScrollerKnobStyleLight;434 default:435 return wkScrollerKnobStyleDefault;436 }437 }438 439 450 static PlatformBridge::ThemePaintState scrollbarStateToThemeState(Scrollbar* scrollbar) { 440 451 if (!scrollbar->enabled()) … … 446 457 447 458 return PlatformBridge::StateActive; 459 } 460 461 void ScrollbarThemeChromiumMac::updateEnabledState(Scrollbar* scrollbar) 462 { 463 if (isScrollbarOverlayAPIAvailable()) { 464 wkScrollbarPainterSetEnabled(scrollbarMap()->get(scrollbar).get(), scrollbar->enabled()); 465 } 448 466 } 449 467 … … 478 496 #endif 479 497 480 wkSetScrollbarPainterKnobStyle(painterForScrollbar(scrollbar), toScrollbarPainterKnobStyle(scrollbar->scrollableArea()->scrollbarOverlayStyle()));481 482 498 GraphicsContextStateSaver stateSaver(*context); 483 499 context->clip(damageRect);
Note:
See TracChangeset
for help on using the changeset viewer.