#import "FlutterMenuPlugin.h"
#include <map>
#import "flutter/shell/platform/common/platform_provided_menu.h"
#import "flutter/shell/platform/darwin/common/framework/Headers/FlutterChannels.h"
#import "flutter/shell/platform/darwin/common/framework/Headers/FlutterCodecs.h"
Go to the source code of this file.
Classes | |
class | FlutterMenuDelegate |
Functions | |
static NSDictionary< NSNumber *, NSNumber * > * | GetMacOsSpecialKeys () |
static const std::map< flutter::PlatformProvidedMenu, SEL > | GetMacOSProvidedMenus () |
static NSEventModifierFlags | KeyEquivalentModifierMaskForModifiers (NSNumber *modifiers) |
Variables | |
static NSString *const | kChannelName = @"@"flutter/menu" |
static NSString *const | kIsPluginAvailableMethod = @"@"Menu.isPluginAvailable" |
static NSString *const | kMenuSetMenusMethod = @"@"Menu.setMenus" |
static NSString *const | kMenuSelectedCallbackMethod = @"@"Menu.selectedCallback" |
static NSString *const | kMenuOpenedMethod = @"@"Menu.opened" |
static NSString *const | kMenuClosedMethod = @"@"Menu.closed" |
static NSString *const | kIdKey = @"@"id" |
static NSString *const | kLabelKey = @"@"label" |
static NSString *const | kEnabledKey = @"@"enabled" |
static NSString *const | kChildrenKey = @"@"children" |
static NSString *const | kDividerKey = @"@"isDivider" |
static NSString *const | kShortcutCharacterKey = @"@"shortcutCharacter" |
static NSString *const | kShortcutTriggerKey = @"@"shortcutTrigger" |
static NSString *const | kShortcutModifiersKey = @"@"shortcutModifiers" |
static NSString *const | kPlatformProvidedMenuKey = @"@"platformProvidedMenu" |
constexpr int | kFlutterShortcutModifierMeta = 1 << 0 |
constexpr int | kFlutterShortcutModifierShift = 1 << 1 |
constexpr int | kFlutterShortcutModifierAlt = 1 << 2 |
constexpr int | kFlutterShortcutModifierControl = 1 << 3 |
constexpr uint64_t | kFlutterKeyIdPlaneMask = 0xff00000000l |
constexpr uint64_t | kFlutterKeyIdUnicodePlane = 0x0000000000l |
constexpr uint64_t | kFlutterKeyIdValueMask = 0x00ffffffffl |
static const NSDictionary * | logicalKeyToKeyCode = {} |
static NSString *const | kAppName = @"@"APP_NAME" |
int64_t | _identifier |
NSArray< NSMenuItem * > * | _platformProvidedItems |
NSMutableArray< FlutterMenuDelegate * > * | _menuDelegates |
|
static |
The mapping from the PlatformProvidedMenu enum to the macOS selectors for the provided menus.
Definition at line 111 of file FlutterMenuPlugin.mm.
References flutter::kAbout, flutter::kArrangeWindowsInFront, flutter::kHide, flutter::kHideOtherApplications, flutter::kMinimizeWindow, flutter::kQuit, flutter::kServicesSubmenu, flutter::kShowAllApplications, flutter::kStartSpeaking, flutter::kStopSpeaking, flutter::kToggleFullScreen, and flutter::kZoomWindow.
|
static |
Maps the string used by NSMenuItem for the given special key equivalent. Keys are the logical key ids of matching trigger keys.
Definition at line 63 of file FlutterMenuPlugin.mm.
|
static |
Returns the NSEventModifierFlags of |modifiers|, a value from kShortcutKeyModifiers.
Definition at line 135 of file FlutterMenuPlugin.mm.
References kFlutterShortcutModifierAlt, kFlutterShortcutModifierControl, kFlutterShortcutModifierMeta, and kFlutterShortcutModifierShift.
int64_t _identifier |
Definition at line 169 of file FlutterMenuPlugin.mm.
Referenced by FlutterMenuDelegate::initWithIdentifier:channel:.
NSMutableArray<FlutterMenuDelegate*>* _menuDelegates |
Definition at line 229 of file FlutterMenuPlugin.mm.
NSArray<NSMenuItem*>* _platformProvidedItems |
Definition at line 220 of file FlutterMenuPlugin.mm.
|
static |
Definition at line 45 of file FlutterMenuPlugin.mm.
|
static |
Definition at line 14 of file FlutterMenuPlugin.mm.
|
static |
Definition at line 25 of file FlutterMenuPlugin.mm.
|
static |
Definition at line 26 of file FlutterMenuPlugin.mm.
|
static |
Definition at line 24 of file FlutterMenuPlugin.mm.
|
constexpr |
Definition at line 38 of file FlutterMenuPlugin.mm.
|
constexpr |
Definition at line 39 of file FlutterMenuPlugin.mm.
|
constexpr |
Definition at line 40 of file FlutterMenuPlugin.mm.
|
constexpr |
Definition at line 35 of file FlutterMenuPlugin.mm.
Referenced by KeyEquivalentModifierMaskForModifiers().
|
constexpr |
Definition at line 36 of file FlutterMenuPlugin.mm.
Referenced by KeyEquivalentModifierMaskForModifiers().
|
constexpr |
Definition at line 33 of file FlutterMenuPlugin.mm.
Referenced by KeyEquivalentModifierMaskForModifiers().
|
constexpr |
Definition at line 34 of file FlutterMenuPlugin.mm.
Referenced by KeyEquivalentModifierMaskForModifiers().
|
static |
Definition at line 22 of file FlutterMenuPlugin.mm.
|
static |
Definition at line 15 of file FlutterMenuPlugin.mm.
|
static |
Definition at line 23 of file FlutterMenuPlugin.mm.
|
static |
Definition at line 19 of file FlutterMenuPlugin.mm.
|
static |
Definition at line 18 of file FlutterMenuPlugin.mm.
|
static |
Definition at line 17 of file FlutterMenuPlugin.mm.
|
static |
Definition at line 16 of file FlutterMenuPlugin.mm.
|
static |
Definition at line 30 of file FlutterMenuPlugin.mm.
|
static |
Definition at line 27 of file FlutterMenuPlugin.mm.
|
static |
Definition at line 29 of file FlutterMenuPlugin.mm.
|
static |
Definition at line 28 of file FlutterMenuPlugin.mm.
|
static |
Definition at line 42 of file FlutterMenuPlugin.mm.