Index: chrome/browser/ui/cocoa/bookmarks/bookmark_menu_cocoa_controller.h |
diff --git a/chrome/browser/ui/cocoa/bookmarks/bookmark_menu_cocoa_controller.h b/chrome/browser/ui/cocoa/bookmarks/bookmark_menu_cocoa_controller.h |
index aeedcdbb110a25eaa101b171f738f031a4141d7b..cc2755371337275b3f5f342a0e7850b1c4546775 100644 |
--- a/chrome/browser/ui/cocoa/bookmarks/bookmark_menu_cocoa_controller.h |
+++ b/chrome/browser/ui/cocoa/bookmarks/bookmark_menu_cocoa_controller.h |
@@ -17,15 +17,17 @@ |
class BookmarkNode; |
class BookmarkMenuBridge; |
+@protocol BookmarkMenuDelegate; |
@interface BookmarkMenuCocoaController : NSObject<NSMenuDelegate> { |
@private |
BookmarkMenuBridge* bridge_; // weak; owns me |
- NSMenu *menu_; |
+ NSMenu* menu_; |
+ id<BookmarkMenuDelegate> delegate_; |
} |
-// The Bookmarks menu |
@property(nonatomic, readonly) NSMenu* menu; |
+@property(nonatomic, assign) id<BookmarkMenuDelegate> delegate; |
// Return an autoreleased string to be used as a menu title for the |
// given bookmark node. |
@@ -46,6 +48,19 @@ class BookmarkMenuBridge; |
@end // BookmarkMenuCocoaController |
+//////////////////////////////////////////////////////////////////////////////// |
+ |
+// This protocol is used to forward relevant methods from NSMenuDelegate to |
+// some other object. |
+@protocol BookmarkMenuDelegate <NSObject> |
+@optional |
+ |
+- (void)bookmarkMenuWillOpen:(BookmarkMenuCocoaController*)controller; |
+- (void)bookmarkMenuDidClose:(BookmarkMenuCocoaController*)controller; |
+ |
+@end |
+ |
+//////////////////////////////////////////////////////////////////////////////// |
@interface BookmarkMenuCocoaController (ExposedForUnitTests) |
- (const BookmarkNode*)nodeForIdentifier:(int)identifier; |