| Index: chrome/common/extensions/permissions/chrome_api_permissions.cc
|
| diff --git a/chrome/common/extensions/permissions/chrome_api_permissions.cc b/chrome/common/extensions/permissions/chrome_api_permissions.cc
|
| index 41b2705186221bfd000bd2f4e04e44b774ed3f6a..9c8cc203c599accbac28ee0d00bf2b27a280898c 100644
|
| --- a/chrome/common/extensions/permissions/chrome_api_permissions.cc
|
| +++ b/chrome/common/extensions/permissions/chrome_api_permissions.cc
|
| @@ -19,8 +19,8 @@ namespace {
|
| const char kOldUnlimitedStoragePermission[] = "unlimited_storage";
|
| const char kWindowsPermission[] = "windows";
|
|
|
| -template<typename T> APIPermission* CreateAPIPermission(
|
| - const APIPermissionInfo* permission) {
|
| +template <typename T>
|
| +APIPermission* CreateAPIPermission(const APIPermissionInfo* permission) {
|
| return new T(permission);
|
| }
|
|
|
| @@ -31,38 +31,50 @@ std::vector<APIPermissionInfo*> ChromeAPIPermissions::GetAllPermissions()
|
| APIPermissionInfo::InitInfo permissions_to_register[] = {
|
| // Register permissions for all extension types.
|
| {APIPermission::kBackground, "background"},
|
| - {APIPermission::kClipboardRead, "clipboardRead",
|
| - APIPermissionInfo::kFlagNone, IDS_EXTENSION_PROMPT_WARNING_CLIPBOARD,
|
| + {APIPermission::kClipboardRead,
|
| + "clipboardRead",
|
| + APIPermissionInfo::kFlagNone,
|
| + IDS_EXTENSION_PROMPT_WARNING_CLIPBOARD,
|
| PermissionMessage::kClipboard},
|
| {APIPermission::kClipboardWrite, "clipboardWrite"},
|
| {APIPermission::kDeclarativeContent, "declarativeContent"},
|
| - {APIPermission::kDesktopCapture, "desktopCapture",
|
| + {APIPermission::kDesktopCapture,
|
| + "desktopCapture",
|
| APIPermissionInfo::kFlagNone,
|
| IDS_EXTENSION_PROMPT_WARNING_DESKTOP_CAPTURE,
|
| PermissionMessage::kDesktopCapture},
|
| - {APIPermission::kDownloads, "downloads", APIPermissionInfo::kFlagNone,
|
| - IDS_EXTENSION_PROMPT_WARNING_DOWNLOADS, PermissionMessage::kDownloads},
|
| - {APIPermission::kDownloadsOpen, "downloads.open",
|
| + {APIPermission::kDownloads,
|
| + "downloads",
|
| + APIPermissionInfo::kFlagNone,
|
| + IDS_EXTENSION_PROMPT_WARNING_DOWNLOADS,
|
| + PermissionMessage::kDownloads},
|
| + {APIPermission::kDownloadsOpen,
|
| + "downloads.open",
|
| APIPermissionInfo::kFlagNone,
|
| IDS_EXTENSION_PROMPT_WARNING_DOWNLOADS_OPEN,
|
| PermissionMessage::kDownloadsOpen},
|
| {APIPermission::kDownloadsShelf, "downloads.shelf"},
|
| {APIPermission::kEasyUnlockPrivate, "easyUnlockPrivate"},
|
| {APIPermission::kIdentity, "identity"},
|
| - {APIPermission::kIdentityEmail, "identity.email",
|
| + {APIPermission::kIdentityEmail,
|
| + "identity.email",
|
| APIPermissionInfo::kFlagNone,
|
| IDS_EXTENSION_PROMPT_WARNING_IDENTITY_EMAIL,
|
| PermissionMessage::kIdentityEmail},
|
| - {APIPermission::kExperimental, "experimental",
|
| + {APIPermission::kExperimental,
|
| + "experimental",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kEmbeddedExtensionOptions, "embeddedExtensionOptions",
|
| + {APIPermission::kEmbeddedExtensionOptions,
|
| + "embeddedExtensionOptions",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kGeolocation, "geolocation",
|
| + {APIPermission::kGeolocation,
|
| + "geolocation",
|
| APIPermissionInfo::kFlagCannotBeOptional,
|
| IDS_EXTENSION_PROMPT_WARNING_GEOLOCATION,
|
| PermissionMessage::kGeolocation},
|
| {APIPermission::kNotifications, "notifications"},
|
| - {APIPermission::kUnlimitedStorage, "unlimitedStorage",
|
| + {APIPermission::kUnlimitedStorage,
|
| + "unlimitedStorage",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| {APIPermission::kGcdPrivate, "gcdPrivate"},
|
| {APIPermission::kGcm, "gcm"},
|
| @@ -70,203 +82,292 @@ std::vector<APIPermissionInfo*> ChromeAPIPermissions::GetAllPermissions()
|
|
|
| // Register extension permissions.
|
| {APIPermission::kAccessibilityFeaturesModify,
|
| - "accessibilityFeatures.modify", APIPermissionInfo::kFlagNone,
|
| + "accessibilityFeatures.modify",
|
| + APIPermissionInfo::kFlagNone,
|
| IDS_EXTENSION_PROMPT_WARNING_ACCESSIBILITY_FEATURES_MODIFY,
|
| PermissionMessage::kAccessibilityFeaturesModify},
|
| - {APIPermission::kAccessibilityFeaturesRead, "accessibilityFeatures.read",
|
| + {APIPermission::kAccessibilityFeaturesRead,
|
| + "accessibilityFeatures.read",
|
| APIPermissionInfo::kFlagNone,
|
| IDS_EXTENSION_PROMPT_WARNING_ACCESSIBILITY_FEATURES_READ,
|
| PermissionMessage::kAccessibilityFeaturesRead},
|
| - {APIPermission::kAccessibilityPrivate, "accessibilityPrivate",
|
| + {APIPermission::kAccessibilityPrivate,
|
| + "accessibilityPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| {APIPermission::kActiveTab, "activeTab"},
|
| {APIPermission::kAlarms, "alarms"},
|
| - {APIPermission::kBookmark, "bookmarks", APIPermissionInfo::kFlagNone,
|
| - IDS_EXTENSION_PROMPT_WARNING_BOOKMARKS, PermissionMessage::kBookmarks},
|
| - {APIPermission::kBrailleDisplayPrivate, "brailleDisplayPrivate",
|
| + {APIPermission::kBookmark,
|
| + "bookmarks",
|
| + APIPermissionInfo::kFlagNone,
|
| + IDS_EXTENSION_PROMPT_WARNING_BOOKMARKS,
|
| + PermissionMessage::kBookmarks},
|
| + {APIPermission::kBrailleDisplayPrivate,
|
| + "brailleDisplayPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| {APIPermission::kBrowsingData, "browsingData"},
|
| - {APIPermission::kContentSettings, "contentSettings",
|
| + {APIPermission::kContentSettings,
|
| + "contentSettings",
|
| APIPermissionInfo::kFlagNone,
|
| IDS_EXTENSION_PROMPT_WARNING_CONTENT_SETTINGS,
|
| PermissionMessage::kContentSettings},
|
| {APIPermission::kContextMenus, "contextMenus"},
|
| {APIPermission::kCookie, "cookies"},
|
| - {APIPermission::kCopresence, "copresence", APIPermissionInfo::kFlagNone,
|
| - IDS_EXTENSION_PROMPT_WARNING_COPRESENCE, PermissionMessage::kCopresence},
|
| + {APIPermission::kCopresence,
|
| + "copresence",
|
| + APIPermissionInfo::kFlagNone,
|
| + IDS_EXTENSION_PROMPT_WARNING_COPRESENCE,
|
| + PermissionMessage::kCopresence},
|
| {APIPermission::kCopresencePrivate, "copresencePrivate"},
|
| {APIPermission::kEnterprisePlatformKeys, "enterprise.platformKeys"},
|
| - {APIPermission::kFileBrowserHandler, "fileBrowserHandler",
|
| + {APIPermission::kFileBrowserHandler,
|
| + "fileBrowserHandler",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kFontSettings, "fontSettings",
|
| + {APIPermission::kFontSettings,
|
| + "fontSettings",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kHistory, "history", APIPermissionInfo::kFlagNone,
|
| + {APIPermission::kHistory,
|
| + "history",
|
| + APIPermissionInfo::kFlagNone,
|
| IDS_EXTENSION_PROMPT_WARNING_HISTORY_WRITE,
|
| PermissionMessage::kBrowsingHistory},
|
| {APIPermission::kIdltest, "idltest"},
|
| {APIPermission::kIdle, "idle"},
|
| {APIPermission::kInfobars, "infobars"},
|
| - {APIPermission::kInput, "input", APIPermissionInfo::kFlagNone,
|
| - IDS_EXTENSION_PROMPT_WARNING_INPUT, PermissionMessage::kInput},
|
| - {APIPermission::kLocation, "location",
|
| + {APIPermission::kInput,
|
| + "input",
|
| + APIPermissionInfo::kFlagNone,
|
| + IDS_EXTENSION_PROMPT_WARNING_INPUT,
|
| + PermissionMessage::kInput},
|
| + {APIPermission::kLocation,
|
| + "location",
|
| APIPermissionInfo::kFlagCannotBeOptional,
|
| IDS_EXTENSION_PROMPT_WARNING_GEOLOCATION,
|
| PermissionMessage::kGeolocation},
|
| - {APIPermission::kManagement, "management", APIPermissionInfo::kFlagNone,
|
| - IDS_EXTENSION_PROMPT_WARNING_MANAGEMENT, PermissionMessage::kManagement},
|
| - {APIPermission::kNativeMessaging, "nativeMessaging",
|
| + {APIPermission::kManagement,
|
| + "management",
|
| + APIPermissionInfo::kFlagNone,
|
| + IDS_EXTENSION_PROMPT_WARNING_MANAGEMENT,
|
| + PermissionMessage::kManagement},
|
| + {APIPermission::kNativeMessaging,
|
| + "nativeMessaging",
|
| APIPermissionInfo::kFlagNone,
|
| IDS_EXTENSION_PROMPT_WARNING_NATIVE_MESSAGING,
|
| PermissionMessage::kNativeMessaging},
|
| - {APIPermission::kPrivacy, "privacy", APIPermissionInfo::kFlagNone,
|
| - IDS_EXTENSION_PROMPT_WARNING_PRIVACY, PermissionMessage::kPrivacy},
|
| - {APIPermission::kProcesses, "processes", APIPermissionInfo::kFlagNone,
|
| - IDS_EXTENSION_PROMPT_WARNING_HISTORY_READ, PermissionMessage::kTabs},
|
| + {APIPermission::kPrivacy,
|
| + "privacy",
|
| + APIPermissionInfo::kFlagNone,
|
| + IDS_EXTENSION_PROMPT_WARNING_PRIVACY,
|
| + PermissionMessage::kPrivacy},
|
| + {APIPermission::kProcesses,
|
| + "processes",
|
| + APIPermissionInfo::kFlagNone,
|
| + IDS_EXTENSION_PROMPT_WARNING_HISTORY_READ,
|
| + PermissionMessage::kTabs},
|
| {APIPermission::kSessions, "sessions"},
|
| - {APIPermission::kSignedInDevices, "signedInDevices",
|
| + {APIPermission::kSignedInDevices,
|
| + "signedInDevices",
|
| APIPermissionInfo::kFlagNone,
|
| IDS_EXTENSION_PROMPT_WARNING_SIGNED_IN_DEVICES,
|
| PermissionMessage::kSignedInDevices},
|
| - {APIPermission::kSyncFileSystem, "syncFileSystem",
|
| + {APIPermission::kSyncFileSystem,
|
| + "syncFileSystem",
|
| APIPermissionInfo::kFlagNone,
|
| IDS_EXTENSION_PROMPT_WARNING_SYNCFILESYSTEM,
|
| PermissionMessage::kSyncFileSystem},
|
| - {APIPermission::kTab, "tabs", APIPermissionInfo::kFlagNone,
|
| - IDS_EXTENSION_PROMPT_WARNING_HISTORY_READ, PermissionMessage::kTabs},
|
| - {APIPermission::kTopSites, "topSites", APIPermissionInfo::kFlagNone,
|
| - IDS_EXTENSION_PROMPT_WARNING_TOPSITES, PermissionMessage::kTopSites},
|
| + {APIPermission::kTab,
|
| + "tabs",
|
| + APIPermissionInfo::kFlagNone,
|
| + IDS_EXTENSION_PROMPT_WARNING_HISTORY_READ,
|
| + PermissionMessage::kTabs},
|
| + {APIPermission::kTopSites,
|
| + "topSites",
|
| + APIPermissionInfo::kFlagNone,
|
| + IDS_EXTENSION_PROMPT_WARNING_TOPSITES,
|
| + PermissionMessage::kTopSites},
|
| {APIPermission::kTts, "tts", 0, APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kTtsEngine, "ttsEngine",
|
| + {APIPermission::kTtsEngine,
|
| + "ttsEngine",
|
| APIPermissionInfo::kFlagCannotBeOptional,
|
| - IDS_EXTENSION_PROMPT_WARNING_TTS_ENGINE, PermissionMessage::kTtsEngine},
|
| - {APIPermission::kWallpaper, "wallpaper",
|
| + IDS_EXTENSION_PROMPT_WARNING_TTS_ENGINE,
|
| + PermissionMessage::kTtsEngine},
|
| + {APIPermission::kWallpaper,
|
| + "wallpaper",
|
| APIPermissionInfo::kFlagCannotBeOptional,
|
| - IDS_EXTENSION_PROMPT_WARNING_WALLPAPER, PermissionMessage::kWallpaper},
|
| - {APIPermission::kWebNavigation, "webNavigation",
|
| - APIPermissionInfo::kFlagNone, IDS_EXTENSION_PROMPT_WARNING_HISTORY_READ,
|
| + IDS_EXTENSION_PROMPT_WARNING_WALLPAPER,
|
| + PermissionMessage::kWallpaper},
|
| + {APIPermission::kWebNavigation,
|
| + "webNavigation",
|
| + APIPermissionInfo::kFlagNone,
|
| + IDS_EXTENSION_PROMPT_WARNING_HISTORY_READ,
|
| PermissionMessage::kTabs},
|
|
|
| // Register private permissions.
|
| - {APIPermission::kScreenlockPrivate, "screenlockPrivate",
|
| + {APIPermission::kScreenlockPrivate,
|
| + "screenlockPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional,
|
| IDS_EXTENSION_PROMPT_WARNING_SCREENLOCK_PRIVATE,
|
| PermissionMessage::kScreenlockPrivate},
|
| - {APIPermission::kActivityLogPrivate, "activityLogPrivate",
|
| + {APIPermission::kActivityLogPrivate,
|
| + "activityLogPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional,
|
| IDS_EXTENSION_PROMPT_WARNING_ACTIVITY_LOG_PRIVATE,
|
| PermissionMessage::kActivityLogPrivate},
|
| - {APIPermission::kAutoTestPrivate, "autotestPrivate",
|
| + {APIPermission::kAutoTestPrivate,
|
| + "autotestPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kBookmarkManagerPrivate, "bookmarkManagerPrivate",
|
| + {APIPermission::kBookmarkManagerPrivate,
|
| + "bookmarkManagerPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| {APIPermission::kCast, "cast", APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kChromeosInfoPrivate, "chromeosInfoPrivate",
|
| + {APIPermission::kChromeosInfoPrivate,
|
| + "chromeosInfoPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kCommandsAccessibility, "commands.accessibility",
|
| + {APIPermission::kCommandsAccessibility,
|
| + "commands.accessibility",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kCommandLinePrivate, "commandLinePrivate",
|
| + {APIPermission::kCommandLinePrivate,
|
| + "commandLinePrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kDeveloperPrivate, "developerPrivate",
|
| + {APIPermission::kDeveloperPrivate,
|
| + "developerPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kDiagnostics, "diagnostics",
|
| + {APIPermission::kDiagnostics,
|
| + "diagnostics",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| {APIPermission::kDial, "dial", APIPermissionInfo::kFlagCannotBeOptional},
|
| {APIPermission::kDownloadsInternal, "downloadsInternal"},
|
| - {APIPermission::kExperienceSamplingPrivate, "experienceSamplingPrivate",
|
| + {APIPermission::kExperienceSamplingPrivate,
|
| + "experienceSamplingPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional,
|
| IDS_EXTENSION_PROMPT_WARNING_EXPERIENCE_SAMPLING_PRIVATE,
|
| PermissionMessage::kExperienceSamplingPrivate},
|
| - {APIPermission::kFileBrowserHandlerInternal, "fileBrowserHandlerInternal",
|
| + {APIPermission::kFileBrowserHandlerInternal,
|
| + "fileBrowserHandlerInternal",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kFileManagerPrivate, "fileManagerPrivate",
|
| + {APIPermission::kFileManagerPrivate,
|
| + "fileManagerPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kHotwordPrivate, "hotwordPrivate",
|
| + {APIPermission::kHotwordPrivate,
|
| + "hotwordPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kIdentityPrivate, "identityPrivate",
|
| + {APIPermission::kIdentityPrivate,
|
| + "identityPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kLogPrivate, "logPrivate",
|
| + {APIPermission::kLogPrivate,
|
| + "logPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| {APIPermission::kWebcamPrivate, "webcamPrivate"},
|
| - {APIPermission::kNetworkingPrivate, "networkingPrivate",
|
| + {APIPermission::kNetworkingPrivate,
|
| + "networkingPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional,
|
| IDS_EXTENSION_PROMPT_WARNING_NETWORKING_PRIVATE,
|
| PermissionMessage::kNetworkingPrivate},
|
| - {APIPermission::kMediaPlayerPrivate, "mediaPlayerPrivate",
|
| + {APIPermission::kMediaPlayerPrivate,
|
| + "mediaPlayerPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kMetricsPrivate, "metricsPrivate",
|
| + {APIPermission::kMetricsPrivate,
|
| + "metricsPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| {APIPermission::kMDns, "mdns", APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kMusicManagerPrivate, "musicManagerPrivate",
|
| + {APIPermission::kMusicManagerPrivate,
|
| + "musicManagerPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional,
|
| IDS_EXTENSION_PROMPT_WARNING_MUSIC_MANAGER_PRIVATE,
|
| PermissionMessage::kMusicManagerPrivate},
|
| - {APIPermission::kPreferencesPrivate, "preferencesPrivate",
|
| + {APIPermission::kPreferencesPrivate,
|
| + "preferencesPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kSystemPrivate, "systemPrivate",
|
| + {APIPermission::kSystemPrivate,
|
| + "systemPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kCloudPrintPrivate, "cloudPrintPrivate",
|
| + {APIPermission::kCloudPrintPrivate,
|
| + "cloudPrintPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kInputMethodPrivate, "inputMethodPrivate",
|
| + {APIPermission::kInputMethodPrivate,
|
| + "inputMethodPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kEchoPrivate, "echoPrivate",
|
| + {APIPermission::kEchoPrivate,
|
| + "echoPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kFeedbackPrivate, "feedbackPrivate",
|
| + {APIPermission::kFeedbackPrivate,
|
| + "feedbackPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kImageWriterPrivate, "imageWriterPrivate",
|
| + {APIPermission::kImageWriterPrivate,
|
| + "imageWriterPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kReadingListPrivate, "readingListPrivate",
|
| + {APIPermission::kReadingListPrivate,
|
| + "readingListPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kRtcPrivate, "rtcPrivate",
|
| + {APIPermission::kRtcPrivate,
|
| + "rtcPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| {APIPermission::kSyncedNotificationsPrivate,
|
| "syncedNotificationsPrivate"},
|
| - {APIPermission::kTerminalPrivate, "terminalPrivate",
|
| + {APIPermission::kTerminalPrivate,
|
| + "terminalPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kVirtualKeyboardPrivate, "virtualKeyboardPrivate",
|
| + {APIPermission::kVirtualKeyboardPrivate,
|
| + "virtualKeyboardPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kWallpaperPrivate, "wallpaperPrivate",
|
| + {APIPermission::kWallpaperPrivate,
|
| + "wallpaperPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kWebstorePrivate, "webstorePrivate",
|
| + {APIPermission::kWebstorePrivate,
|
| + "webstorePrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kMediaGalleriesPrivate, "mediaGalleriesPrivate",
|
| + {APIPermission::kMediaGalleriesPrivate,
|
| + "mediaGalleriesPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kStreamsPrivate, "streamsPrivate",
|
| + {APIPermission::kStreamsPrivate,
|
| + "streamsPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| {APIPermission::kEnterprisePlatformKeysPrivate,
|
| "enterprise.platformKeysPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kWebrtcAudioPrivate, "webrtcAudioPrivate",
|
| + {APIPermission::kWebrtcAudioPrivate,
|
| + "webrtcAudioPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kWebrtcLoggingPrivate, "webrtcLoggingPrivate",
|
| + {APIPermission::kWebrtcLoggingPrivate,
|
| + "webrtcLoggingPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kPrincipalsPrivate, "principalsPrivate",
|
| + {APIPermission::kPrincipalsPrivate,
|
| + "principalsPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| - {APIPermission::kFirstRunPrivate, "firstRunPrivate",
|
| + {APIPermission::kFirstRunPrivate,
|
| + "firstRunPrivate",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
|
|
| // Full url access permissions.
|
| - {APIPermission::kDebugger, "debugger",
|
| + {APIPermission::kDebugger,
|
| + "debugger",
|
| APIPermissionInfo::kFlagImpliesFullURLAccess |
|
| APIPermissionInfo::kFlagCannotBeOptional,
|
| - IDS_EXTENSION_PROMPT_WARNING_DEBUGGER, PermissionMessage::kDebugger},
|
| - {APIPermission::kDevtools, "devtools",
|
| + IDS_EXTENSION_PROMPT_WARNING_DEBUGGER,
|
| + PermissionMessage::kDebugger},
|
| + {APIPermission::kDevtools,
|
| + "devtools",
|
| APIPermissionInfo::kFlagImpliesFullURLAccess |
|
| APIPermissionInfo::kFlagCannotBeOptional |
|
| APIPermissionInfo::kFlagInternal},
|
| - {APIPermission::kPageCapture, "pageCapture",
|
| + {APIPermission::kPageCapture,
|
| + "pageCapture",
|
| APIPermissionInfo::kFlagImpliesFullURLAccess},
|
| - {APIPermission::kTabCapture, "tabCapture",
|
| + {APIPermission::kTabCapture,
|
| + "tabCapture",
|
| APIPermissionInfo::kFlagImpliesFullURLAccess},
|
| - {APIPermission::kTabCaptureForTab, "tabCaptureForTab",
|
| + {APIPermission::kTabCaptureForTab,
|
| + "tabCaptureForTab",
|
| APIPermissionInfo::kFlagInternal},
|
| - {APIPermission::kPlugin, "plugin",
|
| + {APIPermission::kPlugin,
|
| + "plugin",
|
| APIPermissionInfo::kFlagImpliesFullURLAccess |
|
| APIPermissionInfo::kFlagImpliesFullAccess |
|
| APIPermissionInfo::kFlagCannotBeOptional |
|
| APIPermissionInfo::kFlagInternal,
|
| IDS_EXTENSION_PROMPT_WARNING_FULL_ACCESS,
|
| PermissionMessage::kFullAccess},
|
| - {APIPermission::kProxy, "proxy",
|
| + {APIPermission::kProxy,
|
| + "proxy",
|
| APIPermissionInfo::kFlagImpliesFullURLAccess |
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
|
|
| @@ -278,14 +379,16 @@ std::vector<APIPermissionInfo*> ChromeAPIPermissions::GetAllPermissions()
|
| // chooser dialog and selected a file or directory. Selecting
|
| // the file or directory is considered consent to read it.
|
| {APIPermission::kFileSystem, "fileSystem"},
|
| - {APIPermission::kFileSystemDirectory, "fileSystem.directory",
|
| + {APIPermission::kFileSystemDirectory,
|
| + "fileSystem.directory",
|
| APIPermissionInfo::kFlagNone,
|
| IDS_EXTENSION_PROMPT_WARNING_FILE_SYSTEM_DIRECTORY,
|
| PermissionMessage::kFileSystemDirectory},
|
| {APIPermission::kFileSystemProvider, "fileSystemProvider"},
|
| {APIPermission::kFileSystemRetainEntries, "fileSystem.retainEntries"},
|
| {APIPermission::kFileSystemWrite, "fileSystem.write"},
|
| - {APIPermission::kFileSystemWriteDirectory, "fileSystem.writeDirectory",
|
| + {APIPermission::kFileSystemWriteDirectory,
|
| + "fileSystem.writeDirectory",
|
| APIPermissionInfo::kFlagNone,
|
| IDS_EXTENSION_PROMPT_WARNING_FILE_SYSTEM_WRITE_DIRECTORY,
|
| PermissionMessage::kFileSystemWriteDirectory},
|
| @@ -294,10 +397,14 @@ std::vector<APIPermissionInfo*> ChromeAPIPermissions::GetAllPermissions()
|
| // message text is specified here. The message ID and text used
|
| // will be determined at run-time in the
|
| // |MediaGalleriesPermission| class.
|
| - {APIPermission::kMediaGalleries, "mediaGalleries",
|
| - APIPermissionInfo::kFlagNone, 0, PermissionMessage::kNone,
|
| + {APIPermission::kMediaGalleries,
|
| + "mediaGalleries",
|
| + APIPermissionInfo::kFlagNone,
|
| + 0,
|
| + PermissionMessage::kNone,
|
| &CreateAPIPermission<MediaGalleriesPermission>},
|
| - {APIPermission::kPushMessaging, "pushMessaging",
|
| + {APIPermission::kPushMessaging,
|
| + "pushMessaging",
|
| APIPermissionInfo::kFlagCannotBeOptional},
|
| {APIPermission::kPointerLock, "pointerLock"},
|
| {APIPermission::kAudio, "audio"},
|
| @@ -305,17 +412,20 @@ std::vector<APIPermissionInfo*> ChromeAPIPermissions::GetAllPermissions()
|
| {APIPermission::kBrowser, "browser"},
|
|
|
| // Settings override permissions.
|
| - {APIPermission::kHomepage, "homepage",
|
| + {APIPermission::kHomepage,
|
| + "homepage",
|
| APIPermissionInfo::kFlagCannotBeOptional |
|
| APIPermissionInfo::kFlagInternal,
|
| IDS_EXTENSION_PROMPT_WARNING_HOME_PAGE_SETTING_OVERRIDE,
|
| PermissionMessage::kHomepage},
|
| - {APIPermission::kSearchProvider, "searchProvider",
|
| + {APIPermission::kSearchProvider,
|
| + "searchProvider",
|
| APIPermissionInfo::kFlagCannotBeOptional |
|
| APIPermissionInfo::kFlagInternal,
|
| IDS_EXTENSION_PROMPT_WARNING_SEARCH_SETTINGS_OVERRIDE,
|
| PermissionMessage::kSearchProvider},
|
| - {APIPermission::kStartupPages, "startupPages",
|
| + {APIPermission::kStartupPages,
|
| + "startupPages",
|
| APIPermissionInfo::kFlagCannotBeOptional |
|
| APIPermissionInfo::kFlagInternal,
|
| IDS_EXTENSION_PROMPT_WARNING_START_PAGE_SETTING_OVERRIDE,
|
| @@ -335,8 +445,7 @@ ChromeAPIPermissions::GetAllAliases() const {
|
| std::vector<PermissionsProvider::AliasInfo> aliases;
|
| aliases.push_back(PermissionsProvider::AliasInfo(
|
| "unlimitedStorage", kOldUnlimitedStoragePermission));
|
| - aliases.push_back(PermissionsProvider::AliasInfo(
|
| - "tabs", kWindowsPermission));
|
| + aliases.push_back(PermissionsProvider::AliasInfo("tabs", kWindowsPermission));
|
| return aliases;
|
| }
|
|
|
|
|