| 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 "chrome/common/extensions/permissions/chrome_permission_message_rules.h
" | 5 #include "chrome/common/extensions/permissions/chrome_permission_message_rules.h
" |
| 6 | 6 |
| 7 #include "base/stl_util.h" | 7 #include "base/stl_util.h" |
| 8 #include "base/strings/string_util.h" | 8 #include "base/strings/string_util.h" |
| 9 #include "chrome/grit/generated_resources.h" | 9 #include "chrome/grit/generated_resources.h" |
| 10 #include "extensions/common/permissions/api_permission_set.h" | 10 #include "extensions/common/permissions/api_permission_set.h" |
| (...skipping 284 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 295 // devices to generate more meaningful messages and better fit the current | 295 // devices to generate more meaningful messages and better fit the current |
| 296 // rules system. Maybe model it similarly to host or socket permissions | 296 // rules system. Maybe model it similarly to host or socket permissions |
| 297 // above. | 297 // above. |
| 298 {new SingleParameterFormatter(IDS_EXTENSION_PROMPT_WARNING_USB_DEVICE), | 298 {new SingleParameterFormatter(IDS_EXTENSION_PROMPT_WARNING_USB_DEVICE), |
| 299 {APIPermission::kUsbDevice}, | 299 {APIPermission::kUsbDevice}, |
| 300 {}}, | 300 {}}, |
| 301 {new SingleParameterFormatter( | 301 {new SingleParameterFormatter( |
| 302 IDS_EXTENSION_PROMPT_WARNING_USB_DEVICE_UNKNOWN_PRODUCT), | 302 IDS_EXTENSION_PROMPT_WARNING_USB_DEVICE_UNKNOWN_PRODUCT), |
| 303 {APIPermission::kUsbDeviceUnknownProduct}, | 303 {APIPermission::kUsbDeviceUnknownProduct}, |
| 304 {}}, | 304 {}}, |
| 305 {IDS_EXTENSION_PROMPT_WARNING_USB_DEVICE_UNKNOWN_VENDOR, |
| 306 {APIPermission::kUsbDeviceUnknownVendor}, |
| 307 {}}, |
| 305 {new SimpleListFormatter(IDS_EXTENSION_PROMPT_WARNING_USB_DEVICE_LIST), | 308 {new SimpleListFormatter(IDS_EXTENSION_PROMPT_WARNING_USB_DEVICE_LIST), |
| 306 {APIPermission::kUsbDeviceList}, | 309 {APIPermission::kUsbDeviceList}, |
| 307 {}}, | 310 {}}, |
| 308 | 311 |
| 309 // Coalesced message rules taken from | 312 // Coalesced message rules taken from |
| 310 // ChromePermissionMessageProvider::GetWarningMessages(): | 313 // ChromePermissionMessageProvider::GetWarningMessages(): |
| 311 | 314 |
| 312 // Access to users' devices should provide a single warning message | 315 // Access to users' devices should provide a single warning message |
| 313 // specifying the transport method used; serial and/or Bluetooth. | 316 // specifying the transport method used; serial and/or Bluetooth. |
| 314 {IDS_EXTENSION_PROMPT_WARNING_BLUETOOTH_SERIAL, | 317 {IDS_EXTENSION_PROMPT_WARNING_BLUETOOTH_SERIAL, |
| (...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 528 // Because warning messages for the "mediaGalleries" permission | 531 // Because warning messages for the "mediaGalleries" permission |
| 529 // vary based on the permissions parameters, no message ID or | 532 // vary based on the permissions parameters, no message ID or |
| 530 // message text is specified here. The message ID and text used | 533 // message text is specified here. The message ID and text used |
| 531 // will be determined at run-time in the | 534 // will be determined at run-time in the |
| 532 // |MediaGalleriesPermission| class. | 535 // |MediaGalleriesPermission| class. |
| 533 | 536 |
| 534 {IDS_EXTENSION_PROMPT_WARNING_INTERCEPT_ALL_KEYS, | 537 {IDS_EXTENSION_PROMPT_WARNING_INTERCEPT_ALL_KEYS, |
| 535 {APIPermission::kInterceptAllKeys}, | 538 {APIPermission::kInterceptAllKeys}, |
| 536 {}}, | 539 {}}, |
| 537 | 540 |
| 538 // Settings override permission messages. | |
| 539 {IDS_EXTENSION_PROMPT_WARNING_HOME_PAGE_SETTING_OVERRIDE, | |
| 540 {APIPermission::kHomepage}, | |
| 541 {}}, | |
| 542 {IDS_EXTENSION_PROMPT_WARNING_SEARCH_SETTINGS_OVERRIDE, | |
| 543 {APIPermission::kSearchProvider}, | |
| 544 {}}, | |
| 545 {IDS_EXTENSION_PROMPT_WARNING_START_PAGE_SETTING_OVERRIDE, | |
| 546 {APIPermission::kStartupPages}, | |
| 547 {}}, | |
| 548 | |
| 549 {IDS_EXTENSION_PROMPT_WARNING_AUDIO_AND_VIDEO_CAPTURE, | 541 {IDS_EXTENSION_PROMPT_WARNING_AUDIO_AND_VIDEO_CAPTURE, |
| 550 {APIPermission::kAudioCapture, APIPermission::kVideoCapture}, | 542 {APIPermission::kAudioCapture, APIPermission::kVideoCapture}, |
| 551 {}}, | 543 {}}, |
| 552 | 544 |
| 553 // Individual message rules taken from | 545 // Individual message rules taken from |
| 554 // ExtensionsAPIPermissions::GetAllPermissions(): | 546 // ExtensionsAPIPermissions::GetAllPermissions(): |
| 555 {IDS_EXTENSION_PROMPT_WARNING_AUDIO_CAPTURE, | 547 {IDS_EXTENSION_PROMPT_WARNING_AUDIO_CAPTURE, |
| 556 {APIPermission::kAudioCapture}, | 548 {APIPermission::kAudioCapture}, |
| 557 {}}, | 549 {}}, |
| 558 {IDS_EXTENSION_PROMPT_WARNING_BLUETOOTH_PRIVATE, | 550 {IDS_EXTENSION_PROMPT_WARNING_BLUETOOTH_PRIVATE, |
| (...skipping 29 matching lines...) Expand all Loading... |
| 588 // SocketsManifestPermission: | 580 // SocketsManifestPermission: |
| 589 {IDS_EXTENSION_PROMPT_WARNING_SOCKET_ANY_HOST, | 581 {IDS_EXTENSION_PROMPT_WARNING_SOCKET_ANY_HOST, |
| 590 {APIPermission::kSocketAnyHost}, | 582 {APIPermission::kSocketAnyHost}, |
| 591 {}}, | 583 {}}, |
| 592 {IDS_EXTENSION_PROMPT_WARNING_NETWORK_STATE, | 584 {IDS_EXTENSION_PROMPT_WARNING_NETWORK_STATE, |
| 593 {APIPermission::kNetworkState}, | 585 {APIPermission::kNetworkState}, |
| 594 {}}, | 586 {}}, |
| 595 | 587 |
| 596 // API permission rules: | 588 // API permission rules: |
| 597 // SettingsOverrideAPIPermission: | 589 // SettingsOverrideAPIPermission: |
| 598 {IDS_EXTENSION_PROMPT_WARNING_HOME_PAGE_SETTING_OVERRIDE, | 590 {new SingleParameterFormatter( |
| 591 IDS_EXTENSION_PROMPT_WARNING_HOME_PAGE_SETTING_OVERRIDE), |
| 599 {APIPermission::kHomepage}, | 592 {APIPermission::kHomepage}, |
| 600 {}}, | 593 {}}, |
| 601 {IDS_EXTENSION_PROMPT_WARNING_START_PAGE_SETTING_OVERRIDE, | 594 {new SingleParameterFormatter( |
| 602 {APIPermission::kStartupPages}, | 595 IDS_EXTENSION_PROMPT_WARNING_SEARCH_SETTINGS_OVERRIDE), |
| 603 {}}, | |
| 604 {IDS_EXTENSION_PROMPT_WARNING_SEARCH_SETTINGS_OVERRIDE, | |
| 605 {APIPermission::kSearchProvider}, | 596 {APIPermission::kSearchProvider}, |
| 606 {}}, | 597 {}}, |
| 607 | 598 {new SingleParameterFormatter( |
| 608 // USBDevicePermission: | 599 IDS_EXTENSION_PROMPT_WARNING_START_PAGE_SETTING_OVERRIDE), |
| 609 {IDS_EXTENSION_PROMPT_WARNING_USB_DEVICE_UNKNOWN_VENDOR, | 600 {APIPermission::kStartupPages}, |
| 610 {APIPermission::kUsbDeviceUnknownVendor}, | |
| 611 {}}, | 601 {}}, |
| 612 | 602 |
| 613 // Other rules: | 603 // Other rules: |
| 614 // From ChromeExtensionsClient::FilterHostPermissions(): | 604 // From ChromeExtensionsClient::FilterHostPermissions(): |
| 615 {IDS_EXTENSION_PROMPT_WARNING_FAVICON, {APIPermission::kFavicon}, {}}, | 605 {IDS_EXTENSION_PROMPT_WARNING_FAVICON, {APIPermission::kFavicon}, {}}, |
| 616 }; | 606 }; |
| 617 | 607 |
| 618 std::vector<ChromePermissionMessageRule> rules; | 608 std::vector<ChromePermissionMessageRule> rules; |
| 619 for (size_t i = 0; i < arraysize(rules_arr); i++) { | 609 for (size_t i = 0; i < arraysize(rules_arr); i++) { |
| 620 rules.push_back(rules_arr[i]); | 610 rules.push_back(rules_arr[i]); |
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 678 insert(permission_four); | 668 insert(permission_four); |
| 679 insert(permission_five); | 669 insert(permission_five); |
| 680 insert(permission_six); | 670 insert(permission_six); |
| 681 } | 671 } |
| 682 | 672 |
| 683 ChromePermissionMessageRule::PermissionIDSetInitializer:: | 673 ChromePermissionMessageRule::PermissionIDSetInitializer:: |
| 684 ~PermissionIDSetInitializer() { | 674 ~PermissionIDSetInitializer() { |
| 685 } | 675 } |
| 686 | 676 |
| 687 } // namespace extensions | 677 } // namespace extensions |
| OLD | NEW |