| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #ifndef CHROME_COMMON_EXTENSIONS_EXTENSION_H_ | 5 #ifndef CHROME_COMMON_EXTENSIONS_EXTENSION_H_ |
| 6 #define CHROME_COMMON_EXTENSIONS_EXTENSION_H_ | 6 #define CHROME_COMMON_EXTENSIONS_EXTENSION_H_ |
| 7 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include <map> | 9 #include <map> |
| 10 #include <set> | 10 #include <set> |
| (...skipping 11 matching lines...) Expand all Loading... |
| 22 #include "chrome/common/extensions/extension_permission_set.h" | 22 #include "chrome/common/extensions/extension_permission_set.h" |
| 23 #include "chrome/common/extensions/manifest.h" | 23 #include "chrome/common/extensions/manifest.h" |
| 24 #include "chrome/common/extensions/user_script.h" | 24 #include "chrome/common/extensions/user_script.h" |
| 25 #include "chrome/common/extensions/url_pattern.h" | 25 #include "chrome/common/extensions/url_pattern.h" |
| 26 #include "chrome/common/extensions/url_pattern_set.h" | 26 #include "chrome/common/extensions/url_pattern_set.h" |
| 27 #include "googleurl/src/gurl.h" | 27 #include "googleurl/src/gurl.h" |
| 28 #include "ui/gfx/size.h" | 28 #include "ui/gfx/size.h" |
| 29 | 29 |
| 30 class ExtensionAction; | 30 class ExtensionAction; |
| 31 class ExtensionResource; | 31 class ExtensionResource; |
| 32 class ExtensionSidebarDefaults; | |
| 33 class FileBrowserHandler; | 32 class FileBrowserHandler; |
| 34 class SkBitmap; | 33 class SkBitmap; |
| 35 class Version; | 34 class Version; |
| 36 | 35 |
| 37 namespace base { | 36 namespace base { |
| 38 class DictionaryValue; | 37 class DictionaryValue; |
| 39 class ListValue; | 38 class ListValue; |
| 40 } | 39 } |
| 41 | 40 |
| 42 namespace webkit_glue { | 41 namespace webkit_glue { |
| (...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 224 // over the other. If an extension is installed from two sources A and B, | 223 // over the other. If an extension is installed from two sources A and B, |
| 225 // its install source should be set to GetHigherPriorityLocation(A, B). | 224 // its install source should be set to GetHigherPriorityLocation(A, B). |
| 226 static Location GetHigherPriorityLocation(Location loc1, Location loc2); | 225 static Location GetHigherPriorityLocation(Location loc1, Location loc2); |
| 227 | 226 |
| 228 // Icon sizes used by the extension system. | 227 // Icon sizes used by the extension system. |
| 229 static const int kIconSizes[]; | 228 static const int kIconSizes[]; |
| 230 | 229 |
| 231 // Max size (both dimensions) for browser and page actions. | 230 // Max size (both dimensions) for browser and page actions. |
| 232 static const int kPageActionIconMaxSize; | 231 static const int kPageActionIconMaxSize; |
| 233 static const int kBrowserActionIconMaxSize; | 232 static const int kBrowserActionIconMaxSize; |
| 234 static const int kSidebarIconMaxSize; | |
| 235 | 233 |
| 236 // Valid schemes for web extent URLPatterns. | 234 // Valid schemes for web extent URLPatterns. |
| 237 static const int kValidWebExtentSchemes; | 235 static const int kValidWebExtentSchemes; |
| 238 | 236 |
| 239 // Valid schemes for host permission URLPatterns. | 237 // Valid schemes for host permission URLPatterns. |
| 240 static const int kValidHostPermissionSchemes; | 238 static const int kValidHostPermissionSchemes; |
| 241 | 239 |
| 242 // The name of the manifest inside an extension. | 240 // The name of the manifest inside an extension. |
| 243 static const FilePath::CharType kManifestFilename[]; | 241 static const FilePath::CharType kManifestFilename[]; |
| 244 | 242 |
| (...skipping 259 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 504 const std::string& name() const { return name_; } | 502 const std::string& name() const { return name_; } |
| 505 const std::string& public_key() const { return public_key_; } | 503 const std::string& public_key() const { return public_key_; } |
| 506 const std::string& description() const { return description_; } | 504 const std::string& description() const { return description_; } |
| 507 int manifest_version() const { return manifest_version_; } | 505 int manifest_version() const { return manifest_version_; } |
| 508 bool converted_from_user_script() const { | 506 bool converted_from_user_script() const { |
| 509 return converted_from_user_script_; | 507 return converted_from_user_script_; |
| 510 } | 508 } |
| 511 const UserScriptList& content_scripts() const { return content_scripts_; } | 509 const UserScriptList& content_scripts() const { return content_scripts_; } |
| 512 ExtensionAction* page_action() const { return page_action_.get(); } | 510 ExtensionAction* page_action() const { return page_action_.get(); } |
| 513 ExtensionAction* browser_action() const { return browser_action_.get(); } | 511 ExtensionAction* browser_action() const { return browser_action_.get(); } |
| 514 ExtensionSidebarDefaults* sidebar_defaults() const { | |
| 515 return sidebar_defaults_.get(); | |
| 516 } | |
| 517 const FileBrowserHandlerList* file_browser_handlers() const { | 512 const FileBrowserHandlerList* file_browser_handlers() const { |
| 518 return file_browser_handlers_.get(); | 513 return file_browser_handlers_.get(); |
| 519 } | 514 } |
| 520 const std::vector<PluginInfo>& plugins() const { return plugins_; } | 515 const std::vector<PluginInfo>& plugins() const { return plugins_; } |
| 521 const std::vector<NaClModuleInfo>& nacl_modules() const { | 516 const std::vector<NaClModuleInfo>& nacl_modules() const { |
| 522 return nacl_modules_; | 517 return nacl_modules_; |
| 523 } | 518 } |
| 524 const std::vector<InputComponentInfo>& input_components() const { | 519 const std::vector<InputComponentInfo>& input_components() const { |
| 525 return input_components_; | 520 return input_components_; |
| 526 } | 521 } |
| (...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 668 ExtensionAction* LoadExtensionActionHelper( | 663 ExtensionAction* LoadExtensionActionHelper( |
| 669 const base::DictionaryValue* extension_action, string16* error); | 664 const base::DictionaryValue* extension_action, string16* error); |
| 670 | 665 |
| 671 // Helper method to load an FileBrowserHandlerList from the manifest. | 666 // Helper method to load an FileBrowserHandlerList from the manifest. |
| 672 FileBrowserHandlerList* LoadFileBrowserHandlers( | 667 FileBrowserHandlerList* LoadFileBrowserHandlers( |
| 673 const base::ListValue* extension_actions, string16* error); | 668 const base::ListValue* extension_actions, string16* error); |
| 674 // Helper method to load an FileBrowserHandler from manifest. | 669 // Helper method to load an FileBrowserHandler from manifest. |
| 675 FileBrowserHandler* LoadFileBrowserHandler( | 670 FileBrowserHandler* LoadFileBrowserHandler( |
| 676 const base::DictionaryValue* file_browser_handlers, string16* error); | 671 const base::DictionaryValue* file_browser_handlers, string16* error); |
| 677 | 672 |
| 678 // Helper method to load an ExtensionSidebarDefaults from the sidebar manifest | |
| 679 // entry. | |
| 680 ExtensionSidebarDefaults* LoadExtensionSidebarDefaults( | |
| 681 const base::DictionaryValue* sidebar, string16* error); | |
| 682 | |
| 683 // Returns true if the extension has more than one "UI surface". For example, | 673 // Returns true if the extension has more than one "UI surface". For example, |
| 684 // an extension that has a browser action and a page action. | 674 // an extension that has a browser action and a page action. |
| 685 bool HasMultipleUISurfaces() const; | 675 bool HasMultipleUISurfaces() const; |
| 686 | 676 |
| 687 // Updates the launch URL and extents for the extension using the given | 677 // Updates the launch URL and extents for the extension using the given |
| 688 // |override_url|. | 678 // |override_url|. |
| 689 void OverrideLaunchUrl(const GURL& override_url); | 679 void OverrideLaunchUrl(const GURL& override_url); |
| 690 | 680 |
| 691 // Returns true if this extension can specify |api|. | 681 // Returns true if this extension can specify |api|. |
| 692 bool CanSpecifyAPIPermission(const ExtensionAPIPermission* api, | 682 bool CanSpecifyAPIPermission(const ExtensionAPIPermission* api, |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 773 | 763 |
| 774 // The extension's page action, if any. | 764 // The extension's page action, if any. |
| 775 scoped_ptr<ExtensionAction> page_action_; | 765 scoped_ptr<ExtensionAction> page_action_; |
| 776 | 766 |
| 777 // The extension's browser action, if any. | 767 // The extension's browser action, if any. |
| 778 scoped_ptr<ExtensionAction> browser_action_; | 768 scoped_ptr<ExtensionAction> browser_action_; |
| 779 | 769 |
| 780 // The extension's file browser actions, if any. | 770 // The extension's file browser actions, if any. |
| 781 scoped_ptr<FileBrowserHandlerList> file_browser_handlers_; | 771 scoped_ptr<FileBrowserHandlerList> file_browser_handlers_; |
| 782 | 772 |
| 783 // The extension's sidebar, if any. | |
| 784 scoped_ptr<ExtensionSidebarDefaults> sidebar_defaults_; | |
| 785 | |
| 786 // Optional list of NPAPI plugins and associated properties. | 773 // Optional list of NPAPI plugins and associated properties. |
| 787 std::vector<PluginInfo> plugins_; | 774 std::vector<PluginInfo> plugins_; |
| 788 | 775 |
| 789 // Optional list of NaCl modules and associated properties. | 776 // Optional list of NaCl modules and associated properties. |
| 790 std::vector<NaClModuleInfo> nacl_modules_; | 777 std::vector<NaClModuleInfo> nacl_modules_; |
| 791 | 778 |
| 792 // Optional list of input components and associated properties. | 779 // Optional list of input components and associated properties. |
| 793 std::vector<InputComponentInfo> input_components_; | 780 std::vector<InputComponentInfo> input_components_; |
| 794 | 781 |
| 795 // Optional URL to a master page of which a single instance should be always | 782 // Optional URL to a master page of which a single instance should be always |
| (...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 934 // only contain the removed permissions. | 921 // only contain the removed permissions. |
| 935 const ExtensionPermissionSet* permissions; | 922 const ExtensionPermissionSet* permissions; |
| 936 | 923 |
| 937 UpdatedExtensionPermissionsInfo( | 924 UpdatedExtensionPermissionsInfo( |
| 938 const Extension* extension, | 925 const Extension* extension, |
| 939 const ExtensionPermissionSet* permissions, | 926 const ExtensionPermissionSet* permissions, |
| 940 Reason reason); | 927 Reason reason); |
| 941 }; | 928 }; |
| 942 | 929 |
| 943 #endif // CHROME_COMMON_EXTENSIONS_EXTENSION_H_ | 930 #endif // CHROME_COMMON_EXTENSIONS_EXTENSION_H_ |
| OLD | NEW |