Changeset 196246 in webkit
- Timestamp:
- Feb 7, 2016 7:01:07 PM (8 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 1 added
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r196244 r196246 1 2016-02-07 Sam Weinig <sam@webkit.org> 2 3 Use modern SPI header idiom for NSScrollerImp and NSScrollerImpPair 4 https://bugs.webkit.org/show_bug.cgi?id=153969 5 6 Reviewed by Dan Bernstein. 7 8 * WebCore.xcodeproj/project.pbxproj: 9 Add new file NSScrollerImpSPI.h 10 11 * page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm: 12 Use new include of NSScrollerImpSPI.h. 13 14 * platform/ScrollbarThemeComposite.h: 15 Define ScrollbarPainter more precisely as NSScrollerImp * now that the type is available to us. 16 17 * platform/mac/NSScrollerImpDetails.h: 18 Remove NSObject category based SPI usage with the modern one NSScrollerImpSPI.h 19 20 * platform/mac/NSScrollerImpDetails.mm: 21 (WebCore::recommendedScrollerStyle): 22 Simplify recommendedScrollerStyle() now that all OS's we ship on have +[NSScroller preferredScrollerStyle]. 23 24 * platform/mac/ScrollAnimatorMac.mm: 25 (supportsUIStateTransitionProgress): 26 (supportsExpansionTransitionProgress): 27 (supportsContentAreaScrolledInDirection): 28 Stop using NSClassFromString now that we can reference the classes explicitly. 29 30 (-[WebScrollbarPainterControllerDelegate invalidate]): 31 (-[WebScrollbarPainterControllerDelegate contentAreaRectForScrollerImpPair:]): 32 (-[WebScrollbarPainterControllerDelegate inLiveResizeForScrollerImpPair:]): 33 (-[WebScrollbarPainterControllerDelegate mouseLocationInContentAreaForScrollerImpPair:]): 34 (-[WebScrollbarPainterControllerDelegate scrollerImpPair:convertContentPoint:toScrollerImp:]): 35 (-[WebScrollbarPainterControllerDelegate scrollerImpPair:setContentAreaNeedsDisplayInRect:]): 36 (-[WebScrollbarPainterControllerDelegate scrollerImpPair:updateScrollerStyleForNewRecommendedScrollerStyle:]): 37 (-[WebScrollbarPainterDelegate layer]): 38 (-[WebScrollbarPainterDelegate mouseLocationInScrollerForScrollerImp:]): 39 (-[WebScrollbarPainterDelegate convertRectToLayer:]): 40 (-[WebScrollbarPainterDelegate shouldUseLayerPerPartForScrollerImp:]): 41 (-[WebScrollbarPainterDelegate setUpAlphaAnimation:scrollerPainter:part:animateAlphaTo:duration:]): 42 (-[WebScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]): 43 (-[WebScrollbarPainterDelegate scrollerImp:animateTrackAlphaTo:duration:]): 44 (-[WebScrollbarPainterDelegate scrollerImp:animateUIStateTransitionWithDuration:]): 45 (-[WebScrollbarPainterDelegate scrollerImp:animateExpansionTransitionWithDuration:]): 46 (-[WebScrollbarPainterDelegate scrollerImp:overlayScrollerStateChangedTo:]): 47 (WebCore::ScrollAnimatorMac::ScrollAnimatorMac): 48 (WebCore::ScrollAnimatorMac::lockOverlayScrollbarStateToHidden): 49 (WebCore::ScrollAnimatorMac::didAddVerticalScrollbar): 50 (WebCore::ScrollAnimatorMac::didAddHorizontalScrollbar): 51 (WebCore::ScrollAnimatorMac::updateScrollerStyle): 52 Add proper conforming to protocols and replace ids with proper types. 53 54 * platform/mac/ScrollbarThemeMac.mm: 55 (WebCore::supportsExpandedScrollbars): 56 (WebCore::ScrollbarThemeMac::registerScrollbar): 57 (WebCore::ScrollbarThemeMac::scrollbarThickness): 58 (WebCore::ScrollbarThemeMac::setUpContentShadowLayer): 59 Stop using NSClassFromString now that we can reference the classes explicitly. 60 61 * platform/spi/mac/NSScrollerImpSPI.h: Added. 62 1 63 2016-02-07 Zalan Bujtas <zalan@apple.com> 2 64 -
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
r196128 r196246 4169 4169 A501920E132EBF2E008BFE55 /* Autocapitalize.h in Headers */ = {isa = PBXBuildFile; fileRef = A501920C132EBF2E008BFE55 /* Autocapitalize.h */; settings = {ATTRIBUTES = (Private, ); }; }; 4170 4170 A502C5DF13049B3500FC7D53 /* WebSafeGCActivityCallbackIOS.h in Headers */ = {isa = PBXBuildFile; fileRef = A502C5DD13049B3500FC7D53 /* WebSafeGCActivityCallbackIOS.h */; }; 4171 A5071E801C506B66009951BE /* InspectorMemoryAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A5071E7E1C5067A0009951BE /* InspectorMemoryAgent.cpp */; }; 4172 A5071E811C506B69009951BE /* InspectorMemoryAgent.h in Headers */ = {isa = PBXBuildFile; fileRef = A5071E7F1C5067A0009951BE /* InspectorMemoryAgent.h */; }; 4171 4173 A5071E851C56D0DC009951BE /* ResourceUsageData.h in Headers */ = {isa = PBXBuildFile; fileRef = A5071E821C56D079009951BE /* ResourceUsageData.h */; }; 4172 4174 A5071E861C56D0DF009951BE /* ResourceUsageThread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A5071E831C56D079009951BE /* ResourceUsageThread.cpp */; }; … … 4174 4176 A5071E891C56D4FE009951BE /* ResourceUsageThreadCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = A5071E881C56D4FA009951BE /* ResourceUsageThreadCocoa.mm */; }; 4175 4177 A5071E8B1C56FB31009951BE /* ResourceUsageData.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A5071E8A1C56FAFA009951BE /* ResourceUsageData.cpp */; }; 4176 A5071E801C506B66009951BE /* InspectorMemoryAgent.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A5071E7E1C5067A0009951BE /* InspectorMemoryAgent.cpp */; };4177 A5071E811C506B69009951BE /* InspectorMemoryAgent.h in Headers */ = {isa = PBXBuildFile; fileRef = A5071E7F1C5067A0009951BE /* InspectorMemoryAgent.h */; };4178 4178 A513B3D7114B1666001C429B /* KeyEventCocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = A5C974CF11485FF10066F2AB /* KeyEventCocoa.h */; }; 4179 4179 A513B3D8114B166A001C429B /* KeyEventCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = A5C974D011485FF10066F2AB /* KeyEventCocoa.mm */; }; … … 10288 10288 7AF9B20A18CFB5F300C64BEF /* JSVTTRegionList.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSVTTRegionList.cpp; sourceTree = "<group>"; }; 10289 10289 7AF9B20B18CFB5F300C64BEF /* JSVTTRegionList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSVTTRegionList.h; sourceTree = "<group>"; }; 10290 7C0406121C66EE9C00AF0711 /* NSScrollerImpSPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSScrollerImpSPI.h; sourceTree = "<group>"; }; 10290 10291 7C1E97251A9F9834007BF0FB /* AutoFillButtonElement.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = AutoFillButtonElement.cpp; sourceTree = "<group>"; }; 10291 10292 7C1E97261A9F9834007BF0FB /* AutoFillButtonElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AutoFillButtonElement.h; sourceTree = "<group>"; }; … … 11806 11807 A501920C132EBF2E008BFE55 /* Autocapitalize.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Autocapitalize.h; sourceTree = "<group>"; }; 11807 11808 A502C5DD13049B3500FC7D53 /* WebSafeGCActivityCallbackIOS.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebSafeGCActivityCallbackIOS.h; sourceTree = "<group>"; }; 11809 A5071E7E1C5067A0009951BE /* InspectorMemoryAgent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorMemoryAgent.cpp; sourceTree = "<group>"; }; 11810 A5071E7F1C5067A0009951BE /* InspectorMemoryAgent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorMemoryAgent.h; sourceTree = "<group>"; }; 11808 11811 A5071E821C56D079009951BE /* ResourceUsageData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ResourceUsageData.h; sourceTree = "<group>"; }; 11809 11812 A5071E831C56D079009951BE /* ResourceUsageThread.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ResourceUsageThread.cpp; sourceTree = "<group>"; }; … … 11811 11814 A5071E881C56D4FA009951BE /* ResourceUsageThreadCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ResourceUsageThreadCocoa.mm; sourceTree = "<group>"; }; 11812 11815 A5071E8A1C56FAFA009951BE /* ResourceUsageData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ResourceUsageData.cpp; sourceTree = "<group>"; }; 11813 A5071E7E1C5067A0009951BE /* InspectorMemoryAgent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorMemoryAgent.cpp; sourceTree = "<group>"; };11814 A5071E7F1C5067A0009951BE /* InspectorMemoryAgent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorMemoryAgent.h; sourceTree = "<group>"; };11815 11816 A516E8B4136E04DB0076C3C0 /* LocalizedDateCache.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LocalizedDateCache.h; sourceTree = "<group>"; }; 11816 11817 A516E8B5136E04DB0076C3C0 /* LocalizedDateCache.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = LocalizedDateCache.mm; sourceTree = "<group>"; }; … … 18873 18874 937F4CCD1A2D4B0100BB39F5 /* NSMenuSPI.h */, 18874 18875 93F1E1EB1A40FDDC00348D13 /* NSPopoverSPI.h */, 18876 7C0406121C66EE9C00AF0711 /* NSScrollerImpSPI.h */, 18875 18877 F40EA8AA1B867D6500CE5581 /* NSScrollingInputFilterSPI.h */, 18876 18878 2DCB837719F99BBA00A7FBE4 /* NSSharingServicePickerSPI.h */, -
trunk/Source/WebCore/page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm
r196226 r196246 32 32 #import "LayoutSize.h" 33 33 #import "Logging.h" 34 #import "NSScrollerImp Details.h"34 #import "NSScrollerImpSPI.h" 35 35 #import "PlatformWheelEvent.h" 36 36 #import "ScrollableArea.h" -
trunk/Source/WebCore/platform/ScrollbarThemeComposite.h
r189144 r196246 30 30 31 31 #if PLATFORM(COCOA) 32 typedef id ScrollbarPainter; 32 OBJC_CLASS NSScrollerImp; 33 typedef NSScrollerImp *ScrollbarPainter; 33 34 #else 34 35 typedef void* ScrollbarPainter; -
trunk/Source/WebCore/platform/mac/NSScrollerImpDetails.h
r194318 r196246 27 27 #define WebCore_NSScrollerImpDetails_h 28 28 29 // Public APIs not available on versions of Mac on which we build30 31 @interface NSObject (ScrollbarPainter)32 + (id)scrollerImpWithStyle:(NSScrollerStyle)newScrollerStyle controlSize:(NSControlSize)newControlSize horizontal:(BOOL)horizontal replacingScrollerImp:(id)previous;33 - (CGFloat)knobAlpha;34 - (void)setKnobAlpha:(CGFloat)knobAlpha;35 - (CGFloat)trackAlpha;36 - (void)setTrackAlpha:(CGFloat)trackAlpha;37 - (void)setEnabled:(BOOL)enabled;38 - (void)setBoundsSize:(NSSize)boundsSize;39 - (void)setDoubleValue:(double)doubleValue;40 - (void)setPresentationValue:(double)presentationValue;41 - (BOOL)shouldUsePresentationValue;42 - (void)setUsePresentationValue:(BOOL)usePresentationValue;43 - (void)setKnobProportion:(CGFloat)proportion;44 - (void)setKnobStyle:(NSScrollerKnobStyle)knobStyle;45 - (void)setExpanded:(BOOL)expanded;46 - (BOOL)isExpanded;47 - (void)setDelegate:(id)delegate;48 - (void)setUiStateTransitionProgress:(CGFloat)uiStateTransitionProgress;49 - (void)setExpansionTransitionProgress:(CGFloat)expansionTransitionProgress;50 - (BOOL)isHorizontal;51 - (CGFloat)trackWidth;52 - (CGFloat)trackBoxWidth;53 - (CGFloat)knobMinLength;54 - (CGFloat)trackOverlapEndInset;55 - (CGFloat)knobOverlapEndInset;56 - (CGFloat)trackEndInset;57 - (CGFloat)knobEndInset;58 - (CGFloat)uiStateTransitionProgress;59 - (CGFloat)expansionTransitionProgress;60 - (NSRect)rectForPart:(NSScrollerPart)partCode;61 - (void)drawKnobSlotInRect:(NSRect)slotRect highlight:(BOOL)flag alpha:(CGFloat)alpha;62 - (void)drawKnob;63 - (void)mouseEnteredScroller;64 - (void)mouseExitedScroller;65 - (void)setTracking:(BOOL)tracking;66 - (void)setNeedsDisplay:(BOOL)flag;67 @end68 69 @interface NSObject (ScrollbarPainterController)70 - (void)setDelegate:(id)delegate;71 - (void)hideOverlayScrollers;72 - (void)flashScrollers;73 - (void)lockOverlayScrollerState:(NSUInteger)state;74 - (BOOL)overlayScrollerStateIsLocked;75 - (void)unlockOverlayScrollerState;76 - (id)horizontalScrollerImp;77 - (void)setHorizontalScrollerImp:(id)horizontal;78 - (id)verticalScrollerImp;79 - (void)setVerticalScrollerImp:(id)vertical;80 - (NSScrollerStyle)scrollerStyle;81 - (void)setScrollerStyle:(NSScrollerStyle)scrollerStyle;82 - (void)contentAreaScrolled;83 - (void)contentAreaScrolledInDirection:(NSPoint)direction;84 - (void)contentAreaWillDraw;85 - (void)mouseEnteredContentArea;86 - (void)mouseExitedContentArea;87 - (void)mouseMovedInContentArea;88 - (void)startLiveResize;89 - (void)contentAreaDidResize;90 - (void)endLiveResize;91 - (void)windowOrderedIn;92 - (void)windowOrderedOut;93 - (void)beginScrollGesture;94 - (void)endScrollGesture;95 @end96 97 29 namespace WebCore { 98 30 -
trunk/Source/WebCore/platform/mac/NSScrollerImpDetails.mm
r147860 r196246 28 28 #include "config.h" 29 29 #include "NSScrollerImpDetails.h" 30 30 31 #include "Settings.h" 31 32 32 33 namespace WebCore { 33 34 34 NSScrollerStyle recommendedScrollerStyle() { 35 NSScrollerStyle recommendedScrollerStyle() 36 { 35 37 if (Settings::usesOverlayScrollbars()) 36 38 return NSScrollerStyleOverlay; 37 if ([NSScroller respondsToSelector:@selector(preferredScrollerStyle)]) 38 return [NSScroller preferredScrollerStyle]; 39 return NSScrollerStyleLegacy; 39 return [NSScroller preferredScrollerStyle]; 40 40 } 41 41 -
trunk/Source/WebCore/platform/mac/ScrollAnimatorMac.mm
r195810 r196246 35 35 #include "Logging.h" 36 36 #include "NSScrollerImpDetails.h" 37 #include "NSScrollerImpSPI.h" 37 38 #include "PlatformWheelEvent.h" 38 39 #include "ScrollView.h" … … 48 49 { 49 50 // FIXME: This is temporary until all platforms that support ScrollbarPainter support this part of the API. 50 static const bool globalSupportsUIStateTransitionProgress = [ NSClassFromString(@"NSScrollerImp")instancesRespondToSelector:@selector(mouseEnteredScroller)];51 static const bool globalSupportsUIStateTransitionProgress = [[NSScrollerImp class] instancesRespondToSelector:@selector(mouseEnteredScroller)]; 51 52 return globalSupportsUIStateTransitionProgress; 52 53 } … … 54 55 static bool supportsExpansionTransitionProgress() 55 56 { 56 static const bool globalSupportsExpansionTransitionProgress = [ NSClassFromString(@"NSScrollerImp")instancesRespondToSelector:@selector(expansionTransitionProgress)];57 static const bool globalSupportsExpansionTransitionProgress = [[NSScrollerImp class] instancesRespondToSelector:@selector(expansionTransitionProgress)]; 57 58 return globalSupportsExpansionTransitionProgress; 58 59 } … … 60 61 static bool supportsContentAreaScrolledInDirection() 61 62 { 62 static const bool globalSupportsContentAreaScrolledInDirection = [ NSClassFromString(@"NSScrollerImpPair")instancesRespondToSelector:@selector(contentAreaScrolledInDirection:)];63 static const bool globalSupportsContentAreaScrolledInDirection = [[NSScrollerImpPair class] instancesRespondToSelector:@selector(contentAreaScrolledInDirection:)]; 63 64 return globalSupportsContentAreaScrolledInDirection; 64 65 } … … 182 183 @end 183 184 184 @interface WebScrollbarPainterControllerDelegate : NSObject 185 @interface WebScrollbarPainterControllerDelegate : NSObject <NSScrollerImpPairDelegate> 185 186 { 186 187 ScrollableArea* _scrollableArea; … … 206 207 } 207 208 208 - (NSRect)contentAreaRectForScrollerImpPair:( id)scrollerImpPair209 - (NSRect)contentAreaRectForScrollerImpPair:(NSScrollerImpPair *)scrollerImpPair 209 210 { 210 211 UNUSED_PARAM(scrollerImpPair); … … 216 217 } 217 218 218 - (BOOL)inLiveResizeForScrollerImpPair:( id)scrollerImpPair219 - (BOOL)inLiveResizeForScrollerImpPair:(NSScrollerImpPair *)scrollerImpPair 219 220 { 220 221 UNUSED_PARAM(scrollerImpPair); … … 225 226 } 226 227 227 - (NSPoint)mouseLocationInContentAreaForScrollerImpPair:( id)scrollerImpPair228 - (NSPoint)mouseLocationInContentAreaForScrollerImpPair:(NSScrollerImpPair *)scrollerImpPair 228 229 { 229 230 UNUSED_PARAM(scrollerImpPair); … … 234 235 } 235 236 236 - (NSPoint)scrollerImpPair:( id)scrollerImpPair convertContentPoint:(NSPoint)pointInContentArea toScrollerImp:(id)scrollerImp237 - (NSPoint)scrollerImpPair:(NSScrollerImpPair *)scrollerImpPair convertContentPoint:(NSPoint)pointInContentArea toScrollerImp:(NSScrollerImp *)scrollerImp 237 238 { 238 239 UNUSED_PARAM(scrollerImpPair); … … 260 261 } 261 262 262 - (void)scrollerImpPair:( id)scrollerImpPair setContentAreaNeedsDisplayInRect:(NSRect)rect263 - (void)scrollerImpPair:(NSScrollerImpPair *)scrollerImpPair setContentAreaNeedsDisplayInRect:(NSRect)rect 263 264 { 264 265 UNUSED_PARAM(scrollerImpPair); … … 274 275 } 275 276 276 - (void)scrollerImpPair:( id)scrollerImpPair updateScrollerStyleForNewRecommendedScrollerStyle:(NSScrollerStyle)newRecommendedScrollerStyle277 - (void)scrollerImpPair:(NSScrollerImpPair *)scrollerImpPair updateScrollerStyleForNewRecommendedScrollerStyle:(NSScrollerStyle)newRecommendedScrollerStyle 277 278 { 278 279 if (!_scrollableArea) … … 382 383 @end 383 384 384 @interface WebScrollbarPainterDelegate : NSObject<NSAnimationDelegate >385 @interface WebScrollbarPainterDelegate : NSObject<NSAnimationDelegate, NSScrollerImpDelegate> 385 386 { 386 387 WebCore::Scrollbar* _scrollbar; … … 450 451 } 451 452 452 - (NSPoint)mouseLocationInScrollerForScrollerImp:( id)scrollerImp453 - (NSPoint)mouseLocationInScrollerForScrollerImp:(NSScrollerImp *)scrollerImp 453 454 { 454 455 if (!_scrollbar) … … 465 466 } 466 467 467 - (BOOL)shouldUseLayerPerPartForScrollerImp:( id)scrollerImp468 - (BOOL)shouldUseLayerPerPartForScrollerImp:(NSScrollerImp *)scrollerImp 468 469 { 469 470 UNUSED_PARAM(scrollerImp); … … 517 518 } 518 519 519 - (void)scrollerImp:( id)scrollerImp animateKnobAlphaTo:(CGFloat)newKnobAlpha duration:(NSTimeInterval)duration520 - (void)scrollerImp:(NSScrollerImp *)scrollerImp animateKnobAlphaTo:(CGFloat)newKnobAlpha duration:(NSTimeInterval)duration 520 521 { 521 522 if (!_scrollbar) … … 540 541 } 541 542 542 - (void)scrollerImp:( id)scrollerImp animateTrackAlphaTo:(CGFloat)newTrackAlpha duration:(NSTimeInterval)duration543 - (void)scrollerImp:(NSScrollerImp *)scrollerImp animateTrackAlphaTo:(CGFloat)newTrackAlpha duration:(NSTimeInterval)duration 543 544 { 544 545 if (!_scrollbar) … … 551 552 } 552 553 553 - (void)scrollerImp:( id)scrollerImp animateUIStateTransitionWithDuration:(NSTimeInterval)duration554 - (void)scrollerImp:(NSScrollerImp *)scrollerImp animateUIStateTransitionWithDuration:(NSTimeInterval)duration 554 555 { 555 556 if (!_scrollbar) … … 585 586 } 586 587 587 - (void)scrollerImp:( id)scrollerImp animateExpansionTransitionWithDuration:(NSTimeInterval)duration588 - (void)scrollerImp:(NSScrollerImp *)scrollerImp animateExpansionTransitionWithDuration:(NSTimeInterval)duration 588 589 { 589 590 if (!_scrollbar) … … 615 616 } 616 617 617 - (void)scrollerImp:( id)scrollerImp overlayScrollerStateChangedTo:(NSUInteger)newOverlayScrollerState618 - (void)scrollerImp:(NSScrollerImp *)scrollerImp overlayScrollerStateChangedTo:(NSOverlayScrollerState)newOverlayScrollerState 618 619 { 619 620 UNUSED_PARAM(scrollerImp); … … 652 653 653 654 m_scrollbarPainterControllerDelegate = adoptNS([[WebScrollbarPainterControllerDelegate alloc] initWithScrollableArea:&scrollableArea]); 654 m_scrollbarPainterController = adoptNS([[NS ClassFromString(@"NSScrollerImpPair")alloc] init]);655 [m_scrollbarPainterController setDelegate: (id)m_scrollbarPainterControllerDelegate.get()];655 m_scrollbarPainterController = adoptNS([[NSScrollerImpPair alloc] init]); 656 [m_scrollbarPainterController setDelegate:m_scrollbarPainterControllerDelegate.get()]; 656 657 [m_scrollbarPainterController setScrollerStyle:recommendedScrollerStyle()]; 657 658 } … … 953 954 { 954 955 if (shouldLockState) 955 [m_scrollbarPainterController lockOverlayScrollerState: ScrollbarOverlayStateHidden];956 [m_scrollbarPainterController lockOverlayScrollerState:NSOverlayScrollerStateHidden]; 956 957 else { 957 958 [m_scrollbarPainterController unlockOverlayScrollerState]; … … 978 979 m_verticalScrollbarPainterDelegate = adoptNS([[WebScrollbarPainterDelegate alloc] initWithScrollbar:scrollbar]); 979 980 980 [painter setDelegate: (id)m_verticalScrollbarPainterDelegate.get()];981 [painter setDelegate:m_verticalScrollbarPainterDelegate.get()]; 981 982 if (GraphicsLayer* layer = scrollbar->scrollableArea().layerForVerticalScrollbar()) 982 983 [painter setLayer:layer->platformLayer()]; … … 1010 1011 m_horizontalScrollbarPainterDelegate = adoptNS([[WebScrollbarPainterDelegate alloc] initWithScrollbar:scrollbar]); 1011 1012 1012 [painter setDelegate: (id)m_horizontalScrollbarPainterDelegate.get()];1013 [painter setDelegate:m_horizontalScrollbarPainterDelegate.get()]; 1013 1014 if (GraphicsLayer* layer = scrollbar->scrollableArea().layerForHorizontalScrollbar()) 1014 1015 [painter setLayer:layer->platformLayer()]; … … 1332 1333 1333 1334 ScrollbarPainter oldVerticalPainter = [m_scrollbarPainterController verticalScrollerImp]; 1334 ScrollbarPainter newVerticalPainter = [NSClassFromString(@"NSScrollerImp") scrollerImpWithStyle:newStyle 1335 controlSize:(NSControlSize)verticalScrollbar->controlSize() 1336 horizontal:NO 1337 replacingScrollerImp:oldVerticalPainter]; 1335 ScrollbarPainter newVerticalPainter = [NSScrollerImp scrollerImpWithStyle:newStyle controlSize:(NSControlSize)verticalScrollbar->controlSize() horizontal:NO replacingScrollerImp:oldVerticalPainter]; 1336 1338 1337 [m_scrollbarPainterController setVerticalScrollerImp:newVerticalPainter]; 1339 1338 macTheme->setNewPainterForScrollbar(*verticalScrollbar, newVerticalPainter); … … 1350 1349 1351 1350 ScrollbarPainter oldHorizontalPainter = [m_scrollbarPainterController horizontalScrollerImp]; 1352 ScrollbarPainter newHorizontalPainter = [NSClassFromString(@"NSScrollerImp") scrollerImpWithStyle:newStyle 1353 controlSize:(NSControlSize)horizontalScrollbar->controlSize() 1354 horizontal:YES 1355 replacingScrollerImp:oldHorizontalPainter]; 1351 ScrollbarPainter newHorizontalPainter = [NSScrollerImp scrollerImpWithStyle:newStyle controlSize:(NSControlSize)horizontalScrollbar->controlSize() horizontal:YES replacingScrollerImp:oldHorizontalPainter]; 1352 1356 1353 [m_scrollbarPainterController setHorizontalScrollerImp:newHorizontalPainter]; 1357 1354 macTheme->setNewPainterForScrollbar(*horizontalScrollbar, newHorizontalPainter); -
trunk/Source/WebCore/platform/mac/ScrollbarThemeMac.mm
r194318 r196246 29 29 #include "BlockExceptions.h" 30 30 #include "ColorMac.h" 31 #include "GraphicsLayer.h" 31 32 #include "ImageBuffer.h" 32 #include "GraphicsLayer.h"33 33 #include "LocalCurrentGraphicsContext.h" 34 34 #include "NSScrollerImpDetails.h" 35 #include "NSScrollerImpSPI.h" 35 36 #include "PlatformMouseEvent.h" 36 37 #include "ScrollAnimatorMac.h" … … 139 140 { 140 141 // FIXME: This is temporary until all platforms that support ScrollbarPainter support this part of the API. 141 static bool globalSupportsExpandedScrollbars = [ NSClassFromString(@"NSScrollerImp")instancesRespondToSelector:@selector(setExpanded:)];142 static bool globalSupportsExpandedScrollbars = [[NSScrollerImp class] instancesRespondToSelector:@selector(setExpanded:)]; 142 143 return globalSupportsExpandedScrollbars; 143 144 } … … 162 163 163 164 bool isHorizontal = scrollbar.orientation() == HorizontalScrollbar; 164 ScrollbarPainter scrollbarPainter = [NS ClassFromString(@"NSScrollerImp")scrollerImpWithStyle:recommendedScrollerStyle() controlSize:scrollbarControlSizeToNSControlSize(scrollbar.controlSize()) horizontal:isHorizontal replacingScrollerImp:nil];165 ScrollbarPainter scrollbarPainter = [NSScrollerImp scrollerImpWithStyle:recommendedScrollerStyle() controlSize:scrollbarControlSizeToNSControlSize(scrollbar.controlSize()) horizontal:isHorizontal replacingScrollerImp:nil]; 165 166 scrollbarMap()->add(&scrollbar, scrollbarPainter); 166 167 updateEnabledState(scrollbar); … … 225 226 { 226 227 BEGIN_BLOCK_OBJC_EXCEPTIONS; 227 ScrollbarPainter scrollbarPainter = [NS ClassFromString(@"NSScrollerImp")scrollerImpWithStyle:recommendedScrollerStyle() controlSize:scrollbarControlSizeToNSControlSize(controlSize) horizontal:NO replacingScrollerImp:nil];228 ScrollbarPainter scrollbarPainter = [NSScrollerImp scrollerImpWithStyle:recommendedScrollerStyle() controlSize:scrollbarControlSizeToNSControlSize(controlSize) horizontal:NO replacingScrollerImp:nil]; 228 229 if (supportsExpandedScrollbars()) 229 230 [scrollbarPainter setExpanded:YES]; … … 589 590 setUpOverhangAreaShadow(graphicsLayer->platformLayer()); 590 591 } 591 592 592 #endif 593 593
Note: See TracChangeset
for help on using the changeset viewer.