Skip to content
  • simon.fraser@apple.com's avatar
    Mitigate scrollbar differences when running pixel tests · d3ee8b30
    simon.fraser@apple.com authored
    https://bugs.webkit.org/show_bug.cgi?id=67217
    
    Source/WebCore:
    
    Reviewed by Dan Bernstein.
    
    Export WebCore::Settings::mockScrollbarsEnabled() for DRT.
    
    * WebCore.exp.in:
    
    Source/WebKit/mac:
    
    Reviewed by Dan Bernstein.
    
    Make it possible to register a custom NSScroller class, which
    the WebDynamicScrollBarsView will use when mock scrollbars are enabled.
    
    Also ensure that the WebPreferences mock scrollbars preference is
    migrated into Settings.
    
    * WebView/WebDynamicScrollBarsView.h:
    * WebView/WebDynamicScrollBarsView.mm:
    (+[WebDynamicScrollBarsView _horizontalScrollerClass]):
    (+[WebDynamicScrollBarsView _verticalScrollerClass]):
    (+[WebDynamicScrollBarsView setCustomScrollerClass:]):
    * WebView/WebView.mm:
    (-[WebView _preferencesChanged:]):
    
    Tools:
    
    Reviewed by Dan Bernstein.
    
    Add an NSScroller subclass that draws mock scrollbars identically
    to the WebCore mock scrollbar theme, and register it with the
    WebDynamicScrollbarsView.
    
    * DumpRenderTree/mac/DumpRenderTree.mm:
    (-[DRTMockScroller rectForPart:]):
    (-[DRTMockScroller drawKnob]):
    (-[DRTMockScroller drawRect:]):
    (registerMockScrollbars):
    (prepareConsistentTestingEnvironment):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@104331 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    d3ee8b30