| OLD | NEW |
| 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/extension_permission_set.h" | 5 #include "chrome/common/extensions/extension_permission_set.h" |
| 6 | 6 |
| 7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
| 8 #include "base/json/json_file_value_serializer.h" | 8 #include "base/json/json_file_value_serializer.h" |
| 9 #include "base/logging.h" | 9 #include "base/logging.h" |
| 10 #include "base/path_service.h" | 10 #include "base/path_service.h" |
| (...skipping 544 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 555 // Ensure that all permissions that needs to show install UI actually have | 555 // Ensure that all permissions that needs to show install UI actually have |
| 556 // strings associated with them. | 556 // strings associated with them. |
| 557 ExtensionAPIPermissionSet skip; | 557 ExtensionAPIPermissionSet skip; |
| 558 | 558 |
| 559 // These are considered "nuisance" or "trivial" permissions that don't need | 559 // These are considered "nuisance" or "trivial" permissions that don't need |
| 560 // a prompt. | 560 // a prompt. |
| 561 skip.insert(ExtensionAPIPermission::kAlarms); | 561 skip.insert(ExtensionAPIPermission::kAlarms); |
| 562 skip.insert(ExtensionAPIPermission::kAppNotifications); | 562 skip.insert(ExtensionAPIPermission::kAppNotifications); |
| 563 skip.insert(ExtensionAPIPermission::kBrowsingData); | 563 skip.insert(ExtensionAPIPermission::kBrowsingData); |
| 564 skip.insert(ExtensionAPIPermission::kContextMenus); | 564 skip.insert(ExtensionAPIPermission::kContextMenus); |
| 565 skip.insert(ExtensionAPIPermission::kDeclarative); |
| 565 skip.insert(ExtensionAPIPermission::kIdle); | 566 skip.insert(ExtensionAPIPermission::kIdle); |
| 566 skip.insert(ExtensionAPIPermission::kNotification); | 567 skip.insert(ExtensionAPIPermission::kNotification); |
| 567 skip.insert(ExtensionAPIPermission::kUnlimitedStorage); | 568 skip.insert(ExtensionAPIPermission::kUnlimitedStorage); |
| 568 skip.insert(ExtensionAPIPermission::kStorage); | 569 skip.insert(ExtensionAPIPermission::kStorage); |
| 569 skip.insert(ExtensionAPIPermission::kTts); | 570 skip.insert(ExtensionAPIPermission::kTts); |
| 570 | 571 |
| 571 // TODO(erikkay) add a string for this permission. | 572 // TODO(erikkay) add a string for this permission. |
| 572 skip.insert(ExtensionAPIPermission::kBackground); | 573 skip.insert(ExtensionAPIPermission::kBackground); |
| 573 | 574 |
| 574 skip.insert(ExtensionAPIPermission::kClipboardWrite); | 575 skip.insert(ExtensionAPIPermission::kClipboardWrite); |
| 575 | 576 |
| 576 // The cookie permission does nothing unless you have associated host | 577 // The cookie permission does nothing unless you have associated host |
| 577 // permissions. | 578 // permissions. |
| 578 skip.insert(ExtensionAPIPermission::kCookie); | 579 skip.insert(ExtensionAPIPermission::kCookie); |
| 579 | 580 |
| 580 // The ime, proxy, and webRequest permissions are warned as part of host | 581 // The ime, proxy, and webRequest permissions are warned as part of host |
| 581 // permission checks. | 582 // permission checks. |
| 582 skip.insert(ExtensionAPIPermission::kInput); | 583 skip.insert(ExtensionAPIPermission::kInput); |
| 583 skip.insert(ExtensionAPIPermission::kProxy); | 584 skip.insert(ExtensionAPIPermission::kProxy); |
| 584 skip.insert(ExtensionAPIPermission::kWebRequest); | 585 skip.insert(ExtensionAPIPermission::kWebRequest); |
| 585 skip.insert(ExtensionAPIPermission::kWebRequestBlocking); | 586 skip.insert(ExtensionAPIPermission::kWebRequestBlocking); |
| 587 skip.insert(ExtensionAPIPermission::kDeclarativeWebRequest); |
| 588 |
| 586 | 589 |
| 587 // This permission requires explicit user action (context menu handler) | 590 // This permission requires explicit user action (context menu handler) |
| 588 // so we won't prompt for it for now. | 591 // so we won't prompt for it for now. |
| 589 skip.insert(ExtensionAPIPermission::kFileBrowserHandler); | 592 skip.insert(ExtensionAPIPermission::kFileBrowserHandler); |
| 590 | 593 |
| 591 // This permission requires explicit user action (shortcut) so we don't | 594 // This permission requires explicit user action (shortcut) so we don't |
| 592 // prompt for it. | 595 // prompt for it. |
| 593 skip.insert(ExtensionAPIPermission::kKeybinding); | 596 skip.insert(ExtensionAPIPermission::kKeybinding); |
| 594 | 597 |
| 595 // If you've turned on the experimental command-line flag, we don't need | 598 // If you've turned on the experimental command-line flag, we don't need |
| (...skipping 498 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1094 AddPattern(&non_empty_extent, "http://www.google.com/*"); | 1097 AddPattern(&non_empty_extent, "http://www.google.com/*"); |
| 1095 | 1098 |
| 1096 perm_set = new ExtensionPermissionSet( | 1099 perm_set = new ExtensionPermissionSet( |
| 1097 empty_apis, non_empty_extent, empty_extent); | 1100 empty_apis, non_empty_extent, empty_extent); |
| 1098 EXPECT_FALSE(perm_set->IsEmpty()); | 1101 EXPECT_FALSE(perm_set->IsEmpty()); |
| 1099 | 1102 |
| 1100 perm_set = new ExtensionPermissionSet( | 1103 perm_set = new ExtensionPermissionSet( |
| 1101 empty_apis, empty_extent, non_empty_extent); | 1104 empty_apis, empty_extent, non_empty_extent); |
| 1102 EXPECT_FALSE(perm_set->IsEmpty()); | 1105 EXPECT_FALSE(perm_set->IsEmpty()); |
| 1103 } | 1106 } |
| OLD | NEW |