summaryrefslogtreecommitdiffstats
path: root/chrome/browser/cocoa/menu_tracked_root_view.h
blob: 6d4bffa37f3a279e61c2cc9440e3cda91b15c256 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// Copyright (c) 2010 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 CHROME_BROWSER_COCOA_MENU_TRACKED_ROOT_VIEW_H_
#define CHROME_BROWSER_COCOA_MENU_TRACKED_ROOT_VIEW_H_
#pragma once

#import <Cocoa/Cocoa.h>

// An instance of MenuTrackedRootView should be the root of the view hierarchy
// of the custom view of NSMenuItems. If the user opens the menu in a non-
// sticky fashion (i.e. clicks, holds, and drags) and then releases the mouse
// over the menu item, it will cancel tracking on the |[menuItem_ menu]|.
@interface MenuTrackedRootView : NSView {
 @private
  // The menu item whose custom view's root view is an instance of this class.
  NSMenuItem* menuItem_;  // weak
}

@property (assign, nonatomic) NSMenuItem* menuItem;

@end

#endif  // CHROME_BROWSER_COCOA_MENU_TRACKED_ROOT_VIEW_H_