| 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_STRIP_CONTROLLER_H_ | 5 #ifndef CHROME_BROWSER_UI_COCOA_TABS_TAB_STRIP_CONTROLLER_H_ |
| 6 #define CHROME_BROWSER_UI_COCOA_TABS_TAB_STRIP_CONTROLLER_H_ | 6 #define CHROME_BROWSER_UI_COCOA_TABS_TAB_STRIP_CONTROLLER_H_ |
| 7 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #import <Cocoa/Cocoa.h> | 9 #import <Cocoa/Cocoa.h> |
| 10 | 10 |
| 11 #include "base/memory/scoped_nsobject.h" | 11 #include "base/memory/scoped_nsobject.h" |
| 12 #include "base/memory/scoped_ptr.h" | 12 #include "base/memory/scoped_ptr.h" |
| 13 #import "chrome/browser/ui/cocoa/tab_contents/tab_contents_controller.h" | |
| 14 #import "chrome/browser/ui/cocoa/tabs/tab_controller_target.h" | 13 #import "chrome/browser/ui/cocoa/tabs/tab_controller_target.h" |
| 15 #import "chrome/browser/ui/cocoa/url_drop_target.h" | 14 #import "chrome/browser/ui/cocoa/url_drop_target.h" |
| 16 #include "chrome/browser/ui/tabs/hover_tab_selector.h" | 15 #include "chrome/browser/ui/tabs/hover_tab_selector.h" |
| 17 #import "third_party/GTM/AppKit/GTMWindowSheetController.h" | 16 #import "third_party/GTM/AppKit/GTMWindowSheetController.h" |
| 18 | 17 |
| 19 @class CrTrackingArea; | 18 @class CrTrackingArea; |
| 20 @class NewTabButton; | 19 @class NewTabButton; |
| 21 @class TabContentsController; | 20 @class TabContentsController; |
| 22 @class TabView; | 21 @class TabView; |
| 23 @class TabStripDragController; | 22 @class TabStripDragController; |
| (...skipping 29 matching lines...) Expand all Loading... |
| 53 // A class that handles managing the tab strip in a browser window. It uses | 52 // A class that handles managing the tab strip in a browser window. It uses |
| 54 // a supporting C++ bridge object to register for notifications from the | 53 // a supporting C++ bridge object to register for notifications from the |
| 55 // TabStripModel. The Obj-C part of this class handles drag and drop and all | 54 // TabStripModel. The Obj-C part of this class handles drag and drop and all |
| 56 // the other Cocoa-y aspects. | 55 // the other Cocoa-y aspects. |
| 57 // | 56 // |
| 58 // For a full description of the design, see | 57 // For a full description of the design, see |
| 59 // http://www.chromium.org/developers/design-documents/tab-strip-mac | 58 // http://www.chromium.org/developers/design-documents/tab-strip-mac |
| 60 @interface TabStripController : | 59 @interface TabStripController : |
| 61 NSObject<TabControllerTarget, | 60 NSObject<TabControllerTarget, |
| 62 URLDropTargetController, | 61 URLDropTargetController, |
| 63 GTMWindowSheetControllerDelegate, | 62 GTMWindowSheetControllerDelegate> { |
| 64 TabContentsControllerDelegate> { | |
| 65 @private | 63 @private |
| 66 scoped_nsobject<TabStripView> tabStripView_; | 64 scoped_nsobject<TabStripView> tabStripView_; |
| 67 NSView* switchView_; // weak | 65 NSView* switchView_; // weak |
| 68 scoped_nsobject<NSView> dragBlockingView_; // avoid bad window server drags | 66 scoped_nsobject<NSView> dragBlockingView_; // avoid bad window server drags |
| 69 NewTabButton* newTabButton_; // weak, obtained from the nib. | 67 NewTabButton* newTabButton_; // weak, obtained from the nib. |
| 70 | 68 |
| 71 // The controller that manages all the interactions of dragging tabs. | 69 // The controller that manages all the interactions of dragging tabs. |
| 72 scoped_nsobject<TabStripDragController> dragController_; | 70 scoped_nsobject<TabStripDragController> dragController_; |
| 73 | 71 |
| 74 // Tracks the newTabButton_ for rollovers. | 72 // Tracks the newTabButton_ for rollovers. |
| (...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 257 - (void)attachConstrainedWindow:(ConstrainedWindowMac*)window; | 255 - (void)attachConstrainedWindow:(ConstrainedWindowMac*)window; |
| 258 - (void)removeConstrainedWindow:(ConstrainedWindowMac*)window; | 256 - (void)removeConstrainedWindow:(ConstrainedWindowMac*)window; |
| 259 | 257 |
| 260 @end | 258 @end |
| 261 | 259 |
| 262 // Notification sent when the number of tabs changes. The object will be this | 260 // Notification sent when the number of tabs changes. The object will be this |
| 263 // controller. | 261 // controller. |
| 264 extern NSString* const kTabStripNumberOfTabsChanged; | 262 extern NSString* const kTabStripNumberOfTabsChanged; |
| 265 | 263 |
| 266 #endif // CHROME_BROWSER_UI_COCOA_TABS_TAB_STRIP_CONTROLLER_H_ | 264 #endif // CHROME_BROWSER_UI_COCOA_TABS_TAB_STRIP_CONTROLLER_H_ |
| OLD | NEW |