Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(125)

Side by Side Diff: chrome/common/extensions/permissions/chrome_api_permissions.cc

Issue 546683002: Move app.window section of _api_features.json from chrome/common/extensions/api to extensions/commo… (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Move permissions Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/common/extensions/permissions/chrome_api_permissions.h" 5 #include "chrome/common/extensions/permissions/chrome_api_permissions.h"
6 6
7 #include "chrome/grit/generated_resources.h" 7 #include "chrome/grit/generated_resources.h"
8 #include "extensions/common/permissions/api_permission.h" 8 #include "extensions/common/permissions/api_permission.h"
9 #include "extensions/common/permissions/api_permission_set.h" 9 #include "extensions/common/permissions/api_permission_set.h"
10 #include "extensions/common/permissions/media_galleries_permission.h" 10 #include "extensions/common/permissions/media_galleries_permission.h"
11 #include "extensions/common/permissions/permission_message.h" 11 #include "extensions/common/permissions/permission_message.h"
12 #include "extensions/common/permissions/permissions_info.h" 12 #include "extensions/common/permissions/permissions_info.h"
13 #include "extensions/strings/grit/extensions_strings.h" 13 #include "extensions/strings/grit/extensions_strings.h"
14 14
15 namespace extensions { 15 namespace extensions {
16 16
17 namespace { 17 namespace {
18 18
19 const char kOldAlwaysOnTopWindowsPermission[] = "alwaysOnTopWindows";
20 const char kOldFullscreenPermission[] = "fullscreen";
21 const char kOldOverrideEscFullscreenPermission[] = "overrideEscFullscreen";
22 const char kOldUnlimitedStoragePermission[] = "unlimited_storage"; 19 const char kOldUnlimitedStoragePermission[] = "unlimited_storage";
23 const char kWindowsPermission[] = "windows"; 20 const char kWindowsPermission[] = "windows";
24 21
25 template<typename T> APIPermission* CreateAPIPermission( 22 template<typename T> APIPermission* CreateAPIPermission(
26 const APIPermissionInfo* permission) { 23 const APIPermissionInfo* permission) {
27 return new T(permission); 24 return new T(permission);
28 } 25 }
29 26
30 } // namespace 27 } // namespace
31 28
(...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after
289 APIPermissionInfo::kFlagImpliesFullAccess | 286 APIPermissionInfo::kFlagImpliesFullAccess |
290 APIPermissionInfo::kFlagCannotBeOptional | 287 APIPermissionInfo::kFlagCannotBeOptional |
291 APIPermissionInfo::kFlagInternal, 288 APIPermissionInfo::kFlagInternal,
292 IDS_EXTENSION_PROMPT_WARNING_FULL_ACCESS, 289 IDS_EXTENSION_PROMPT_WARNING_FULL_ACCESS,
293 PermissionMessage::kFullAccess}, 290 PermissionMessage::kFullAccess},
294 {APIPermission::kProxy, "proxy", 291 {APIPermission::kProxy, "proxy",
295 APIPermissionInfo::kFlagImpliesFullURLAccess | 292 APIPermissionInfo::kFlagImpliesFullURLAccess |
296 APIPermissionInfo::kFlagCannotBeOptional}, 293 APIPermissionInfo::kFlagCannotBeOptional},
297 294
298 // Platform-app permissions. 295 // Platform-app permissions.
299 {APIPermission::kAlwaysOnTopWindows, "app.window.alwaysOnTop"}, 296
300 // The permission string for "fileSystem" is only shown when 297 // The permission string for "fileSystem" is only shown when
301 // "write" or "directory" is present. Read-only access is only 298 // "write" or "directory" is present. Read-only access is only
302 // granted after the user has been shown a file or directory 299 // granted after the user has been shown a file or directory
303 // chooser dialog and selected a file or directory. Selecting 300 // chooser dialog and selected a file or directory. Selecting
304 // the file or directory is considered consent to read it. 301 // the file or directory is considered consent to read it.
305 {APIPermission::kFileSystem, "fileSystem"}, 302 {APIPermission::kFileSystem, "fileSystem"},
306 {APIPermission::kFileSystemDirectory, "fileSystem.directory", 303 {APIPermission::kFileSystemDirectory, "fileSystem.directory",
307 APIPermissionInfo::kFlagNone, 304 APIPermissionInfo::kFlagNone,
308 IDS_EXTENSION_PROMPT_WARNING_FILE_SYSTEM_DIRECTORY, 305 IDS_EXTENSION_PROMPT_WARNING_FILE_SYSTEM_DIRECTORY,
309 PermissionMessage::kFileSystemDirectory}, 306 PermissionMessage::kFileSystemDirectory},
310 {APIPermission::kFileSystemProvider, "fileSystemProvider"}, 307 {APIPermission::kFileSystemProvider, "fileSystemProvider"},
311 {APIPermission::kFileSystemRetainEntries, "fileSystem.retainEntries"}, 308 {APIPermission::kFileSystemRetainEntries, "fileSystem.retainEntries"},
312 {APIPermission::kFileSystemWrite, "fileSystem.write"}, 309 {APIPermission::kFileSystemWrite, "fileSystem.write"},
313 {APIPermission::kFileSystemWriteDirectory, "fileSystem.writeDirectory", 310 {APIPermission::kFileSystemWriteDirectory, "fileSystem.writeDirectory",
314 APIPermissionInfo::kFlagNone, 311 APIPermissionInfo::kFlagNone,
315 IDS_EXTENSION_PROMPT_WARNING_FILE_SYSTEM_WRITE_DIRECTORY, 312 IDS_EXTENSION_PROMPT_WARNING_FILE_SYSTEM_WRITE_DIRECTORY,
316 PermissionMessage::kFileSystemWriteDirectory}, 313 PermissionMessage::kFileSystemWriteDirectory},
317 // Because warning messages for the "mediaGalleries" permission 314 // Because warning messages for the "mediaGalleries" permission
318 // vary based on the permissions parameters, no message ID or 315 // vary based on the permissions parameters, no message ID or
319 // message text is specified here. The message ID and text used 316 // message text is specified here. The message ID and text used
320 // will be determined at run-time in the 317 // will be determined at run-time in the
321 // |MediaGalleriesPermission| class. 318 // |MediaGalleriesPermission| class.
322 {APIPermission::kMediaGalleries, "mediaGalleries", 319 {APIPermission::kMediaGalleries, "mediaGalleries",
323 APIPermissionInfo::kFlagNone, 0, PermissionMessage::kNone, 320 APIPermissionInfo::kFlagNone, 0, PermissionMessage::kNone,
324 &CreateAPIPermission<MediaGalleriesPermission>}, 321 &CreateAPIPermission<MediaGalleriesPermission>},
325 {APIPermission::kPushMessaging, "pushMessaging", 322 {APIPermission::kPushMessaging, "pushMessaging",
326 APIPermissionInfo::kFlagCannotBeOptional}, 323 APIPermissionInfo::kFlagCannotBeOptional},
327 {APIPermission::kPointerLock, "pointerLock"}, 324 {APIPermission::kPointerLock, "pointerLock"},
328 {APIPermission::kFullscreen, "app.window.fullscreen"},
329 {APIPermission::kAudio, "audio"}, 325 {APIPermission::kAudio, "audio"},
330 {APIPermission::kCastStreaming, "cast.streaming"}, 326 {APIPermission::kCastStreaming, "cast.streaming"},
331 {APIPermission::kOverrideEscFullscreen,
332 "app.window.fullscreen.overrideEsc"},
333 {APIPermission::kWindowShape, "app.window.shape"},
334 {APIPermission::kAlphaEnabled, "app.window.alpha"},
335 {APIPermission::kBrowser, "browser"}, 327 {APIPermission::kBrowser, "browser"},
336 328
337 // Settings override permissions. 329 // Settings override permissions.
338 {APIPermission::kHomepage, "homepage", 330 {APIPermission::kHomepage, "homepage",
339 APIPermissionInfo::kFlagCannotBeOptional | 331 APIPermissionInfo::kFlagCannotBeOptional |
340 APIPermissionInfo::kFlagInternal, 332 APIPermissionInfo::kFlagInternal,
341 IDS_EXTENSION_PROMPT_WARNING_HOME_PAGE_SETTING_OVERRIDE, 333 IDS_EXTENSION_PROMPT_WARNING_HOME_PAGE_SETTING_OVERRIDE,
342 PermissionMessage::kHomepage}, 334 PermissionMessage::kHomepage},
343 {APIPermission::kSearchProvider, "searchProvider", 335 {APIPermission::kSearchProvider, "searchProvider",
344 APIPermissionInfo::kFlagCannotBeOptional | 336 APIPermissionInfo::kFlagCannotBeOptional |
(...skipping 12 matching lines...) Expand all
357 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(permissions_to_register); ++i) 349 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(permissions_to_register); ++i)
358 permissions.push_back(new APIPermissionInfo(permissions_to_register[i])); 350 permissions.push_back(new APIPermissionInfo(permissions_to_register[i]));
359 return permissions; 351 return permissions;
360 } 352 }
361 353
362 std::vector<PermissionsProvider::AliasInfo> 354 std::vector<PermissionsProvider::AliasInfo>
363 ChromeAPIPermissions::GetAllAliases() const { 355 ChromeAPIPermissions::GetAllAliases() const {
364 // Register aliases. 356 // Register aliases.
365 std::vector<PermissionsProvider::AliasInfo> aliases; 357 std::vector<PermissionsProvider::AliasInfo> aliases;
366 aliases.push_back(PermissionsProvider::AliasInfo( 358 aliases.push_back(PermissionsProvider::AliasInfo(
367 "app.window.alwaysOnTop", kOldAlwaysOnTopWindowsPermission));
368 aliases.push_back(PermissionsProvider::AliasInfo("app.window.fullscreen",
369 kOldFullscreenPermission));
370 aliases.push_back(
371 PermissionsProvider::AliasInfo("app.window.fullscreen.overrideEsc",
372 kOldOverrideEscFullscreenPermission));
373 aliases.push_back(PermissionsProvider::AliasInfo(
374 "unlimitedStorage", kOldUnlimitedStoragePermission)); 359 "unlimitedStorage", kOldUnlimitedStoragePermission));
375 aliases.push_back(PermissionsProvider::AliasInfo( 360 aliases.push_back(PermissionsProvider::AliasInfo(
376 "tabs", kWindowsPermission)); 361 "tabs", kWindowsPermission));
377 return aliases; 362 return aliases;
378 } 363 }
379 364
380 } // namespace extensions 365 } // namespace extensions
OLDNEW
« no previous file with comments | « chrome/common/extensions/api/_permission_features.json ('k') | extensions/common/api/_api_features.json » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698