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 #ifndef IOS_CHROME_BROWSER_UI_CONTEXT_MENU_CONTEXT_MENU_CONTROLLER_H_ | |
5 #define IOS_CHROME_BROWSER_UI_CONTEXT_MENU_CONTEXT_MENU_CONTROLLER_H_ | |
6 | |
7 #import <UIKit/UIKit.h> | |
8 | |
9 #include "base/ios/block_types.h" | |
10 | |
11 @class ContextMenuHolder; | |
12 | |
13 // Abstracts displaying context menus for all device form factors, given a | |
14 // ContextMenuHolder with the title and action to associate to each menu | |
15 // item. Will show a sheet on the phone and use a popover on a tablet. | |
16 @interface ContextMenuController : NSObject | |
17 | |
18 // Whether the context menu is visible. | |
19 @property(nonatomic, readonly, getter=isVisible) BOOL visible; | |
20 | |
21 // Displays a context menu. If on a tablet, |localPoint| is the point in | |
22 // |view|'s coordinates to show the popup. If a phone, |localPoint| is unused | |
23 // since the display is a sheet, but |view| is still used to attach the sheet to | |
24 // the given view. | |
25 // The |menuHolder| that will be put in the menu. | |
26 - (void)showWithHolder:(ContextMenuHolder*)menuHolder | |
27 atPoint:(CGPoint)localPoint | |
28 inView:(UIView*)view; | |
29 | |
30 // Dismisses displayed context menu. | |
31 - (void)dismissAnimated:(BOOL)animated | |
32 completionHandler:(ProceduralBlock)completionHandler; | |
33 | |
34 @end | |
35 | |
36 #endif // IOS_CHROME_BROWSER_UI_CONTEXT_MENU_CONTEXT_MENU_CONTROLLER_H_ | |
OLD | NEW |