Home | History | Annotate | Download | only in toolbar
      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