OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "extensions/common/permissions/extensions_api_permissions.h" | 5 #include "extensions/common/permissions/extensions_api_permissions.h" |
6 | 6 |
| 7 #include <vector> |
| 8 |
7 #include "extensions/common/permissions/api_permission.h" | 9 #include "extensions/common/permissions/api_permission.h" |
8 #include "extensions/common/permissions/permission_message.h" | 10 #include "extensions/common/permissions/permission_message.h" |
9 #include "extensions/common/permissions/socket_permission.h" | 11 #include "extensions/common/permissions/socket_permission.h" |
10 #include "extensions/common/permissions/usb_device_permission.h" | 12 #include "extensions/common/permissions/usb_device_permission.h" |
11 #include "grit/extensions_strings.h" | 13 #include "grit/extensions_strings.h" |
12 | 14 |
13 namespace extensions { | 15 namespace extensions { |
14 | 16 |
15 namespace { | 17 namespace { |
16 | 18 |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
58 {APIPermission::kU2fDevices, "u2fDevices", APIPermissionInfo::kFlagNone, | 60 {APIPermission::kU2fDevices, "u2fDevices", APIPermissionInfo::kFlagNone, |
59 IDS_EXTENSION_PROMPT_WARNING_U2F_DEVICES, | 61 IDS_EXTENSION_PROMPT_WARNING_U2F_DEVICES, |
60 PermissionMessage::kU2fDevices}, | 62 PermissionMessage::kU2fDevices}, |
61 {APIPermission::kUsb, "usb", APIPermissionInfo::kFlagNone, | 63 {APIPermission::kUsb, "usb", APIPermissionInfo::kFlagNone, |
62 IDS_EXTENSION_PROMPT_WARNING_USB, PermissionMessage::kUsb}, | 64 IDS_EXTENSION_PROMPT_WARNING_USB, PermissionMessage::kUsb}, |
63 {APIPermission::kUsbDevice, "usbDevices", APIPermissionInfo::kFlagNone, 0, | 65 {APIPermission::kUsbDevice, "usbDevices", APIPermissionInfo::kFlagNone, 0, |
64 PermissionMessage::kNone, &CreateAPIPermission<UsbDevicePermission>}, | 66 PermissionMessage::kNone, &CreateAPIPermission<UsbDevicePermission>}, |
65 {APIPermission::kVideoCapture, "videoCapture", | 67 {APIPermission::kVideoCapture, "videoCapture", |
66 APIPermissionInfo::kFlagNone, IDS_EXTENSION_PROMPT_WARNING_VIDEO_CAPTURE, | 68 APIPermissionInfo::kFlagNone, IDS_EXTENSION_PROMPT_WARNING_VIDEO_CAPTURE, |
67 PermissionMessage::kVideoCapture}, | 69 PermissionMessage::kVideoCapture}, |
| 70 // NOTE(kalman): This is provided by a manifest property but needs to |
| 71 // appear in the install permission dialogue, so we need a fake |
| 72 // permission for it. See http://crbug.com/247857. |
| 73 {APIPermission::kWebConnectable, "webConnectable", |
| 74 APIPermissionInfo::kFlagCannotBeOptional | |
| 75 APIPermissionInfo::kFlagInternal, |
| 76 IDS_EXTENSION_PROMPT_WARNING_WEB_CONNECTABLE, |
| 77 PermissionMessage::kWebConnectable}, |
68 {APIPermission::kWebView, "webview", | 78 {APIPermission::kWebView, "webview", |
69 APIPermissionInfo::kFlagCannotBeOptional}, | 79 APIPermissionInfo::kFlagCannotBeOptional}, |
70 {APIPermission::kWindowShape, "app.window.shape"}, | 80 {APIPermission::kWindowShape, "app.window.shape"}, |
71 }; | 81 }; |
72 | 82 |
73 std::vector<APIPermissionInfo*> permissions; | 83 std::vector<APIPermissionInfo*> permissions; |
74 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(permissions_to_register); ++i) | 84 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(permissions_to_register); ++i) |
75 permissions.push_back(new APIPermissionInfo(permissions_to_register[i])); | 85 permissions.push_back(new APIPermissionInfo(permissions_to_register[i])); |
76 return permissions; | 86 return permissions; |
77 } | 87 } |
78 | 88 |
79 std::vector<PermissionsProvider::AliasInfo> | 89 std::vector<PermissionsProvider::AliasInfo> |
80 ExtensionsAPIPermissions::GetAllAliases() const { | 90 ExtensionsAPIPermissions::GetAllAliases() const { |
81 std::vector<PermissionsProvider::AliasInfo> aliases; | 91 std::vector<PermissionsProvider::AliasInfo> aliases; |
82 aliases.push_back(PermissionsProvider::AliasInfo( | 92 aliases.push_back(PermissionsProvider::AliasInfo( |
83 "app.window.alwaysOnTop", kOldAlwaysOnTopWindowsPermission)); | 93 "app.window.alwaysOnTop", kOldAlwaysOnTopWindowsPermission)); |
84 aliases.push_back(PermissionsProvider::AliasInfo("app.window.fullscreen", | 94 aliases.push_back(PermissionsProvider::AliasInfo("app.window.fullscreen", |
85 kOldFullscreenPermission)); | 95 kOldFullscreenPermission)); |
86 aliases.push_back( | 96 aliases.push_back( |
87 PermissionsProvider::AliasInfo("app.window.fullscreen.overrideEsc", | 97 PermissionsProvider::AliasInfo("app.window.fullscreen.overrideEsc", |
88 kOldOverrideEscFullscreenPermission)); | 98 kOldOverrideEscFullscreenPermission)); |
89 return aliases; | 99 return aliases; |
90 } | 100 } |
91 | 101 |
92 } // namespace extensions | 102 } // namespace extensions |
OLD | NEW |