OLD | NEW |
(Empty) | |
| 1 // Copyright 2012 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 #ifndef IOS_CHROME_BROWSER_UI_NO_TABS_NO_TABS_CONTROLLER_H_ |
| 6 #define IOS_CHROME_BROWSER_UI_NO_TABS_NO_TABS_CONTROLLER_H_ |
| 7 |
| 8 #import <UIKit/UIKit.h> |
| 9 |
| 10 @class NoTabsToolbarController; |
| 11 |
| 12 @interface NoTabsController : NSObject |
| 13 |
| 14 // Desginated initializer. Installs the No-Tabs UI in the given |view|. |
| 15 - (id)initWithView:(UIView*)view; |
| 16 |
| 17 // Sets whether or not the No-Tabs UI displays a mode toggle switch. Passes |
| 18 // through to the underlying NoTabsToolbarController. |
| 19 - (void)setHasModeToggleSwitch:(BOOL)hasModeToggle; |
| 20 |
| 21 // Sets up and installs an animation that will animate between the given |
| 22 // buttons. If |show| is YES, the animation is set up as a show animation; |
| 23 // otherwise, it is set up as a dismiss animation. |
| 24 - (void)installAnimationImageForButton:(UIButton*)fromButton |
| 25 inView:(UIView*)view |
| 26 show:(BOOL)show; |
| 27 |
| 28 // TODO(blundell): This method should be internalized if the NoTabsController |
| 29 // becomes part of the responder chain and can catch the command to show the |
| 30 // tools menu directly via |chromeExecuteCommand|. |
| 31 // Shows the tools menu popup. |
| 32 - (void)showToolsMenuPopup; |
| 33 |
| 34 // Dismisses the tools popup if it is open. |
| 35 - (void)dismissToolsMenuPopup; |
| 36 |
| 37 // Must be called before starting the show animation in order to move views into |
| 38 // their pre-animation positions. |
| 39 - (void)prepareForShowAnimation; |
| 40 |
| 41 // Shows the No-Tabs UI. Can be called from within an animation block to |
| 42 // animate the show. |
| 43 - (void)showNoTabsUI; |
| 44 |
| 45 // Must be called after the show animation finishes to allow this controller to |
| 46 // clean up any animation-related state. |
| 47 - (void)showAnimationDidFinish; |
| 48 |
| 49 // Must be called before starting the dismiss animation in order to move views |
| 50 // into their pre-animation positions. |
| 51 - (void)prepareForDismissAnimation; |
| 52 |
| 53 // Dismisses the No-Tabs UI. Can be called from within an animation block to |
| 54 // animate the dismiss. |
| 55 - (void)dismissNoTabsUI; |
| 56 |
| 57 // Must be called after the dismiss animation finishes to allow this controller |
| 58 // to clean up any animation-related state. |
| 59 - (void)dismissAnimationDidFinish; |
| 60 |
| 61 @end |
| 62 |
| 63 #endif // IOS_CHROME_BROWSER_UI_NO_TABS_NO_TABS_CONTROLLER_H_ |
OLD | NEW |