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/tabs/side_tab_strip_view.h" 6 7 #include "base/memory/scoped_nsobject.h" 8 #import "third_party/GTM/AppKit/GTMNSColor+Luminance.h" 9 10 @implementation SideTabStripView 11 12 - (void)drawBorder:(NSRect)bounds { 13 // Draw a border on the right side. 14 NSRect borderRect, contentRect; 15 NSDivideRect(bounds, &borderRect, &contentRect, 1, NSMaxXEdge); 16 [[NSColor colorWithCalibratedWhite:0.0 alpha:0.2] set]; 17 NSRectFillUsingOperation(borderRect, NSCompositeSourceOver); 18 } 19 20 // Override to prevent double-clicks from minimizing the window. The side 21 // tab strip doesn't have that behavior (since it's in the window content 22 // area). 23 - (BOOL)doubleClickMinimizesWindow { 24 return NO; 25 } 26 27 - (void)drawRect:(NSRect)rect { 28 // BOOL isKey = [[self window] isKeyWindow]; 29 NSColor* aColor = 30 [NSColor colorWithCalibratedRed:0.506 green:0.660 blue:0.985 alpha:1.000]; 31 NSColor* bColor = 32 [NSColor colorWithCalibratedRed:0.099 green:0.140 blue:0.254 alpha:1.000]; 33 scoped_nsobject<NSGradient> gradient( 34 [[NSGradient alloc] initWithStartingColor:aColor endingColor:bColor]); 35 36 NSRect gradientRect = [self bounds]; 37 [gradient drawInRect:gradientRect angle:270.0]; 38 39 // Draw borders and any drop feedback. 40 [super drawRect:rect]; 41 } 42 43 @end 44