1// Copyright (c) 2010 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#include "chrome/browser/ui/cocoa/floating_bar_backing_view.h" 6 7#include "base/mac/mac_util.h" 8#import "chrome/browser/ui/cocoa/browser_frame_view.h" 9 10@implementation FloatingBarBackingView 11 12- (void)drawRect:(NSRect)rect { 13 NSWindow* window = [self window]; 14 BOOL isMainWindow = [window isMainWindow]; 15 16 if (isMainWindow) 17 [[NSColor windowFrameColor] set]; 18 else 19 [[NSColor windowBackgroundColor] set]; 20 NSRectFill(rect); 21 22 // TODO(rohitrao): Don't assume -22 here. 23 [BrowserFrameView drawWindowThemeInDirtyRect:rect 24 forView:self 25 bounds:[self bounds] 26 offset:NSMakePoint(0, -22) 27 forceBlackBackground:YES]; 28 29} 30 31// Eat all mouse events (and do *not* pass them on to the next responder!). 32- (void)mouseDown:(NSEvent*)event {} 33- (void)rightMouseDown:(NSEvent*)event {} 34- (void)otherMouseDown:(NSEvent*)event {} 35- (void)rightMouseUp:(NSEvent*)event {} 36- (void)otherMouseUp:(NSEvent*)event {} 37- (void)mouseMoved:(NSEvent*)event {} 38- (void)mouseDragged:(NSEvent*)event {} 39- (void)rightMouseDragged:(NSEvent*)event {} 40- (void)otherMouseDragged:(NSEvent*)event {} 41 42// Eat this too, except that ... 43- (void)mouseUp:(NSEvent*)event { 44 // a double-click in the blank area should try to minimize, to be consistent 45 // with double-clicks on the contiguous tab strip area. (It'll fail and beep.) 46 if ([event clickCount] == 2 && 47 base::mac::ShouldWindowsMiniaturizeOnDoubleClick()) 48 [[self window] performMiniaturize:self]; 49} 50 51@end // @implementation FloatingBarBackingView 52