Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 // Copyright 2017 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_BUBBLE_PROMO_BUBBLE_VIEW_CONTROLLER_H_ | |
| 6 #define IOS_CHROME_BROWSER_UI_BUBBLE_PROMO_BUBBLE_VIEW_CONTROLLER_H_ | |
| 7 | |
| 8 #import <UIKit/UIKit.h> | |
| 9 | |
| 10 @class BubbleConfiguration; | |
| 11 | |
| 12 enum class BubbleArrowDirection; | |
|
edchin
2017/07/01 15:29:28
Both of these should be defined in this header fil
helenlyang
2017/07/05 20:35:37
Done.
| |
| 13 enum class BubbleAlignment; | |
| 14 | |
| 15 // View controller that manages a speech bubble-shaped view, which displays a | |
| 16 // message in white text and points to the UI element of interest. | |
|
edchin
2017/07/01 15:29:28
White text is irrelevant.
helenlyang
2017/07/05 20:35:37
Removed.
| |
| 17 @interface BubbleViewController : UIViewController | |
| 18 | |
| 19 // The preferred origin of |self.view|. Note that this does not set | |
|
edchin
2017/07/01 15:29:28
"Preferred origin" assumes that the BubbleVC knows
helenlyang
2017/07/05 20:35:37
Removed for now, but may change based on our discu
| |
| 20 // |self.view.frame.origin|; it is the responsibility of BubbleVC's containing | |
| 21 // view controller to properly set the frame of |self.view|. | |
| 22 @property(nonatomic, readonly) CGPoint bubbleOrigin; | |
| 23 | |
| 24 // Initializes the bubble with the configuration object, which gives information | |
| 25 // such as text, arrow direction, alignment, and the UI element it points to. | |
| 26 - (instancetype)initWithConfiguration:(BubbleConfiguration*)configuration | |
|
edchin
2017/07/01 15:29:28
I suggest that we initialize with the necessary in
helenlyang
2017/07/05 20:35:37
Done. I stuck with the "arrowDirection" parameter
edchin
2017/07/06 04:56:19
Acknowledged.
| |
| 27 NS_DESIGNATED_INITIALIZER; | |
| 28 | |
| 29 - (instancetype)initWithNibName:(NSString*)nibNameOrNil | |
| 30 bundle:(NSBundle*)nibBundleOrNil NS_UNAVAILABLE; | |
| 31 | |
| 32 - (instancetype)initWithCoder:(NSCoder*)aDecoder NS_UNAVAILABLE; | |
|
edchin
2017/07/01 15:29:27
The important one to set as unavailable is -init;
helenlyang
2017/07/05 20:35:37
Done.
edchin
2017/07/06 04:56:19
As I was doing some other work, I discovered that
| |
| 33 | |
| 34 // Animates the bubble in with a fade-in. | |
| 35 - (void)animateContentIn; | |
| 36 | |
| 37 // Dismisses the bubble. If |animated| is true, the bubble fades out. | |
| 38 - (void)dismissAnimated:(BOOL)animated; | |
| 39 | |
| 40 @end | |
| 41 | |
| 42 #endif // IOS_CHROME_BROWSER_UI_BUBBLE_PROMO_BUBBLE_VIEW_CONTROLLER_H_ | |
| OLD | NEW |