| OLD | NEW | 
|---|
| (Empty) |  | 
|  | 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 
|  | 2 // Use of this source code is governed by a BSD-style license that can be | 
|  | 3 // found in the LICENSE file. | 
|  | 4 | 
|  | 5 #import "ui/views/cocoa/views_scrollbar_bridge.h" | 
|  | 6 | 
|  | 7 #include "base/mac/mac_util.h" | 
|  | 8 #import "base/mac/sdk_forward_declarations.h" | 
|  | 9 | 
|  | 10 @interface ViewsScrollbarBridge () | 
|  | 11 | 
|  | 12 // Called when we receive a NSPreferredScrollerStyleDidChangeNotification. | 
|  | 13 - (void)onScrollerStyleChanged:(NSNotification*)notification; | 
|  | 14 | 
|  | 15 @end | 
|  | 16 | 
|  | 17 @implementation ViewsScrollbarBridge | 
|  | 18 | 
|  | 19 - (void)setDelegate:(ViewsScrollbarBridgeDelegate*)delegate { | 
|  | 20   DCHECK_NE(delegate, delegate_); | 
|  | 21   delegate_ = delegate; | 
|  | 22   if (!delegate_) { | 
|  | 23     [[NSNotificationCenter defaultCenter] removeObserver:self]; | 
|  | 24     return; | 
|  | 25   } | 
|  | 26   [[NSNotificationCenter defaultCenter] | 
|  | 27       addObserver:self | 
|  | 28          selector:@selector(onScrollerStyleChanged:) | 
|  | 29              name:NSPreferredScrollerStyleDidChangeNotification | 
|  | 30            object:nil]; | 
|  | 31 } | 
|  | 32 | 
|  | 33 - (void)dealloc { | 
|  | 34   DCHECK(!delegate_); | 
|  | 35   [super dealloc]; | 
|  | 36 } | 
|  | 37 | 
|  | 38 - (void)onScrollerStyleChanged:(NSNotification*)notification { | 
|  | 39   if (delegate_) | 
|  | 40     delegate_->OnScrollerStyleChanged(); | 
|  | 41 } | 
|  | 42 | 
|  | 43 + (NSScrollerStyle)getPreferredScrollerStyle { | 
|  | 44   if (![NSScroller respondsToSelector:@selector(preferredScrollerStyle)]) { | 
|  | 45     DCHECK(base::mac::IsOSSnowLeopard()); | 
|  | 46     return NSScrollerStyleLegacy; | 
|  | 47   } | 
|  | 48   return [NSScroller preferredScrollerStyle]; | 
|  | 49 } | 
|  | 50 | 
|  | 51 @end | 
| OLD | NEW | 
|---|