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

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

Issue 11413099: Bluetooth API Permission Dialogs. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 1 month 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/api_permission.h" 5 #include "chrome/common/extensions/permissions/api_permission.h"
6 6
7 #include "chrome/common/extensions/permissions/bluetooth_device_permission.h"
7 #include "chrome/common/extensions/permissions/permissions_info.h" 8 #include "chrome/common/extensions/permissions/permissions_info.h"
8 #include "chrome/common/extensions/permissions/socket_permission.h" 9 #include "chrome/common/extensions/permissions/socket_permission.h"
9 #include "grit/generated_resources.h" 10 #include "grit/generated_resources.h"
10 #include "ui/base/l10n/l10n_util.h" 11 #include "ui/base/l10n/l10n_util.h"
11 12
12 namespace { 13 namespace {
13 14
14 using extensions::APIPermission; 15 using extensions::APIPermission;
15 using extensions::APIPermissionInfo; 16 using extensions::APIPermissionInfo;
16 using extensions::PermissionMessage; 17 using extensions::PermissionMessage;
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after
109 APIPermission::~APIPermission() { } 110 APIPermission::~APIPermission() { }
110 111
111 APIPermission::ID APIPermission::id() const { 112 APIPermission::ID APIPermission::id() const {
112 return info()->id(); 113 return info()->id();
113 } 114 }
114 115
115 const char* APIPermission::name() const { 116 const char* APIPermission::name() const {
116 return info()->name(); 117 return info()->name();
117 } 118 }
118 119
120 std::string APIPermission::ToString() const {
121 return name();
122 }
123
124 bool APIPermission::ManifestEntryRequired() const {
125 return true;
126 }
127
128 bool APIPermission::ManifestEntryForbidden() const {
129 return false;
130 }
131
119 PermissionMessage APIPermission::GetMessage_() const { 132 PermissionMessage APIPermission::GetMessage_() const {
120 return info()->GetMessage_(); 133 return info()->GetMessage_();
121 } 134 }
122 135
123 // 136 //
124 // APIPermissionInfo 137 // APIPermissionInfo
125 // 138 //
126 139
127 APIPermissionInfo::APIPermissionInfo( 140 APIPermissionInfo::APIPermissionInfo(
128 APIPermission::ID id, 141 APIPermission::ID id,
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after
316 { APIPermission::kMediaGalleries, "mediaGalleries" }, 329 { APIPermission::kMediaGalleries, "mediaGalleries" },
317 { APIPermission::kMediaGalleriesRead, "mediaGalleries.read" }, 330 { APIPermission::kMediaGalleriesRead, "mediaGalleries.read" },
318 { APIPermission::kMediaGalleriesAllAutoDetected, 331 { APIPermission::kMediaGalleriesAllAutoDetected,
319 "mediaGalleries.allAutoDetected", kFlagNone, 332 "mediaGalleries.allAutoDetected", kFlagNone,
320 IDS_EXTENSION_PROMPT_WARNING_MEDIA_GALLERIES_ALL_GALLERIES, 333 IDS_EXTENSION_PROMPT_WARNING_MEDIA_GALLERIES_ALL_GALLERIES,
321 PermissionMessage::kMediaGalleriesAllGalleries }, 334 PermissionMessage::kMediaGalleriesAllGalleries },
322 { APIPermission::kPushMessaging, "pushMessaging", kFlagCannotBeOptional }, 335 { APIPermission::kPushMessaging, "pushMessaging", kFlagCannotBeOptional },
323 { APIPermission::kBluetooth, "bluetooth", kFlagNone, 336 { APIPermission::kBluetooth, "bluetooth", kFlagNone,
324 IDS_EXTENSION_PROMPT_WARNING_BLUETOOTH, 337 IDS_EXTENSION_PROMPT_WARNING_BLUETOOTH,
325 PermissionMessage::kBluetooth }, 338 PermissionMessage::kBluetooth },
339 { APIPermission::kBluetoothDevice, "bluetoothDevice",
340 kFlagNone, 0, PermissionMessage::kNone,
341 &::CreateAPIPermission<BluetoothDevicePermission> },
326 { APIPermission::kUsb, "usb", kFlagNone, 342 { APIPermission::kUsb, "usb", kFlagNone,
327 IDS_EXTENSION_PROMPT_WARNING_USB, 343 IDS_EXTENSION_PROMPT_WARNING_USB,
328 PermissionMessage::kUsb }, 344 PermissionMessage::kUsb },
329 }; 345 };
330 346
331 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(PermissionsToRegister); ++i) { 347 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(PermissionsToRegister); ++i) {
332 const PermissionRegistration& pr = PermissionsToRegister[i]; 348 const PermissionRegistration& pr = PermissionsToRegister[i];
333 info->RegisterPermission( 349 info->RegisterPermission(
334 pr.id, pr.name, pr.l10n_message_id, 350 pr.id, pr.name, pr.l10n_message_id,
335 pr.message_id ? pr.message_id : PermissionMessage::kNone, 351 pr.message_id ? pr.message_id : PermissionMessage::kNone,
336 pr.flags, 352 pr.flags,
337 pr.constructor); 353 pr.constructor);
338 } 354 }
339 355
340 // Register aliases. 356 // Register aliases.
341 info->RegisterAlias("unlimitedStorage", kOldUnlimitedStoragePermission); 357 info->RegisterAlias("unlimitedStorage", kOldUnlimitedStoragePermission);
342 info->RegisterAlias("tabs", kWindowsPermission); 358 info->RegisterAlias("tabs", kWindowsPermission);
343 } 359 }
344 360
345 } // namespace extensions 361 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698