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