Index: ios/chrome/browser/ui/main/browser_view_information.h |
diff --git a/ios/chrome/browser/ui/main/browser_view_information.h b/ios/chrome/browser/ui/main/browser_view_information.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..b8b295de6c9b4b2d9907b24cafd39d091e9fe8c4 |
--- /dev/null |
+++ b/ios/chrome/browser/ui/main/browser_view_information.h |
@@ -0,0 +1,46 @@ |
+// Copyright 2016 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef IOS_CHROME_BROWSER_UI_MAIN_BROWSER_VIEW_INFORMATION_H_ |
+#define IOS_CHROME_BROWSER_UI_MAIN_BROWSER_VIEW_INFORMATION_H_ |
+ |
+#import <Foundation/Foundation.h> |
+ |
+@class BrowserViewController; |
+@class TabModel; |
+ |
+namespace ios { |
+class ChromeBrowserState; |
+} |
+ |
+// Information about the Browser View, controllers and tab model. |
+@protocol BrowserViewInformation<NSObject> |
+ |
+// The normal (non-OTR) BrowserViewController |
+@property(nonatomic, retain) BrowserViewController* mainBVC; |
+// The normal (non-OTR) TabModel corresponding to mainBVC. |
+@property(nonatomic, retain) TabModel* mainTabModel; |
+// The OTR BrowserViewController. |
+@property(nonatomic, retain) BrowserViewController* otrBVC; |
+// The OTR TabModel corresponding to otrBVC. |
+@property(nonatomic, retain) TabModel* otrTabModel; |
+// The BrowserViewController that is currently being used (one of mainBVC or |
+// otrBVC). The other, if present, is in suspended mode. |
+@property(nonatomic, assign) BrowserViewController* currentBVC; |
+ |
+// Halts all tabs from all TabModels. |
+- (void)haltAllTabs; |
+ |
+// Returns the browser state corresponding to the current browser view. |
+- (ios::ChromeBrowserState*)currentBrowserState; |
+ |
+// Returns the tab model corresponding to the current browser view. |
+- (TabModel*)currentTabModel; |
+ |
+// Clean up the device sharing manager. |
+- (void)cleanDeviceSharingManager; |
+ |
+@end |
+ |
+#endif // IOS_CHROME_BROWSER_UI_MAIN_BROWSER_VIEW_INFORMATION_H_ |