| OLD | NEW | 
|    1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |    1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 
|    2 // Use of this source code is governed by a BSD-style license that can be |    2 // Use of this source code is governed by a BSD-style license that can be | 
|    3 // found in the LICENSE file. |    3 // found in the LICENSE file. | 
|    4  |    4  | 
|    5 #ifndef CHROME_BROWSER_UI_COCOA_TABS_TAB_WINDOW_CONTROLLER_H_ |    5 #ifndef CHROME_BROWSER_UI_COCOA_TABS_TAB_WINDOW_CONTROLLER_H_ | 
|    6 #define CHROME_BROWSER_UI_COCOA_TABS_TAB_WINDOW_CONTROLLER_H_ |    6 #define CHROME_BROWSER_UI_COCOA_TABS_TAB_WINDOW_CONTROLLER_H_ | 
|    7  |    7  | 
|    8 // A class acting as the Objective-C window controller for a window that has |    8 // A class acting as the Objective-C window controller for a window that has | 
|    9 // tabs which can be dragged around. Tabs can be re-arranged within the same |    9 // tabs which can be dragged around. Tabs can be re-arranged within the same | 
|   10 // window or dragged into other TabWindowController windows. This class doesn't |   10 // window or dragged into other TabWindowController windows. This class doesn't | 
|   11 // know anything about the actual tab implementation or model, as that is fairly |   11 // know anything about the actual tab implementation or model, as that is fairly | 
|   12 // application-specific. It only provides an API to be overridden by subclasses |   12 // application-specific. It only provides an API to be overridden by subclasses | 
|   13 // to fill in the details. |   13 // to fill in the details. | 
|   14  |   14  | 
|   15 #import <Cocoa/Cocoa.h> |   15 #import <Cocoa/Cocoa.h> | 
|   16  |   16  | 
|   17 #include "base/memory/scoped_nsobject.h" |   17 #include "base/mac/scoped_nsobject.h" | 
|   18  |   18  | 
|   19 @class FastResizeView; |   19 @class FastResizeView; | 
|   20 @class FocusTracker; |   20 @class FocusTracker; | 
|   21 @class TabStripView; |   21 @class TabStripView; | 
|   22 @class TabView; |   22 @class TabView; | 
|   23  |   23  | 
|   24 @interface TabWindowController : NSWindowController<NSWindowDelegate> { |   24 @interface TabWindowController : NSWindowController<NSWindowDelegate> { | 
|   25  @private |   25  @private | 
|   26   scoped_nsobject<FastResizeView> tabContentArea_; |   26   base::scoped_nsobject<FastResizeView> tabContentArea_; | 
|   27   scoped_nsobject<TabStripView> tabStripView_; |   27   base::scoped_nsobject<TabStripView> tabStripView_; | 
|   28  |   28  | 
|   29   // The child window used during dragging to achieve the opacity tricks. |   29   // The child window used during dragging to achieve the opacity tricks. | 
|   30   NSWindow* overlayWindow_; |   30   NSWindow* overlayWindow_; | 
|   31  |   31  | 
|   32   // The contentView of the original window that is moved (for the duration |   32   // The contentView of the original window that is moved (for the duration | 
|   33   // of the drag) to the |overlayWindow_|. |   33   // of the drag) to the |overlayWindow_|. | 
|   34   NSView* originalContentView_;  // weak |   34   NSView* originalContentView_;  // weak | 
|   35  |   35  | 
|   36   scoped_nsobject<FocusTracker> focusBeforeOverlay_; |   36   base::scoped_nsobject<FocusTracker> focusBeforeOverlay_; | 
|   37   BOOL closeDeferred_;  // If YES, call performClose: in removeOverlay:. |   37   BOOL closeDeferred_;  // If YES, call performClose: in removeOverlay:. | 
|   38 } |   38 } | 
|   39 @property(readonly, nonatomic) TabStripView* tabStripView; |   39 @property(readonly, nonatomic) TabStripView* tabStripView; | 
|   40 @property(readonly, nonatomic) FastResizeView* tabContentArea; |   40 @property(readonly, nonatomic) FastResizeView* tabContentArea; | 
|   41  |   41  | 
|   42 // This is the designated initializer for this class. |   42 // This is the designated initializer for this class. | 
|   43 - (id)initTabWindowControllerWithTabStrip:(BOOL)hasTabStrip; |   43 - (id)initTabWindowControllerWithTabStrip:(BOOL)hasTabStrip; | 
|   44  |   44  | 
|   45 // Used during tab dragging to turn on/off the overlay window when a tab |   45 // Used during tab dragging to turn on/off the overlay window when a tab | 
|   46 // is torn off. If -deferPerformClose (below) is used, -removeOverlay will |   46 // is torn off. If -deferPerformClose (below) is used, -removeOverlay will | 
| (...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  143 // Tells the tab strip to forget about this tab in preparation for it being |  143 // Tells the tab strip to forget about this tab in preparation for it being | 
|  144 // put into a different tab strip, such as during a drop on another window. |  144 // put into a different tab strip, such as during a drop on another window. | 
|  145 - (void)detachTabView:(NSView*)view; |  145 - (void)detachTabView:(NSView*)view; | 
|  146  |  146  | 
|  147 // Called when the size of the window content area has changed. Override to |  147 // Called when the size of the window content area has changed. Override to | 
|  148 // position specific views. Base class implementation does nothing. |  148 // position specific views. Base class implementation does nothing. | 
|  149 - (void)layoutSubviews; |  149 - (void)layoutSubviews; | 
|  150 @end |  150 @end | 
|  151  |  151  | 
|  152 #endif  // CHROME_BROWSER_UI_COCOA_TABS_TAB_WINDOW_CONTROLLER_H_ |  152 #endif  // CHROME_BROWSER_UI_COCOA_TABS_TAB_WINDOW_CONTROLLER_H_ | 
| OLD | NEW |