1 // Copyright (c) 2011 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 "chrome/browser/ui/cocoa/toolbar/toolbar_view.h" 6 7 #import "chrome/browser/ui/cocoa/themed_window.h" 8 #import "chrome/browser/ui/cocoa/view_id_util.h" 9 #import "ui/base/cocoa/nsgraphics_context_additions.h" 10 11 @implementation ToolbarView 12 13 @synthesize dividerOpacity = dividerOpacity_; 14 15 // Prevent mouse down events from moving the parent window around. 16 - (BOOL)mouseDownCanMoveWindow { 17 return NO; 18 } 19 20 - (void)drawRect:(NSRect)rect { 21 NSPoint phase = [[self window] 22 themePatternPhaseForAlignment:THEME_PATTERN_ALIGN_WITH_TAB_STRIP]; 23 [[NSGraphicsContext currentContext] cr_setPatternPhase:phase forView:self]; 24 [self drawBackgroundWithOpaque:YES]; 25 } 26 27 // Override of |-[BackgroundGradientView strokeColor]|; make it respect opacity. 28 - (NSColor*)strokeColor { 29 return [[super strokeColor] colorWithAlphaComponent:[self dividerOpacity]]; 30 } 31 32 - (BOOL)accessibilityIsIgnored { 33 return NO; 34 } 35 36 - (id)accessibilityAttributeValue:(NSString*)attribute { 37 if ([attribute isEqual:NSAccessibilityRoleAttribute]) 38 return NSAccessibilityToolbarRole; 39 40 return [super accessibilityAttributeValue:attribute]; 41 } 42 43 - (ViewID)viewID { 44 return VIEW_ID_TOOLBAR; 45 } 46 47 - (BOOL)isOpaque { 48 return YES; 49 } 50 51 @end 52