| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 EXTENSIONS_COMMON_EXTENSION_H_ | 5 #ifndef EXTENSIONS_COMMON_EXTENSION_H_ |
| 6 #define EXTENSIONS_COMMON_EXTENSION_H_ | 6 #define EXTENSIONS_COMMON_EXTENSION_H_ |
| 7 | 7 |
| 8 #include <algorithm> | 8 #include <algorithm> |
| 9 #include <iosfwd> | 9 #include <iosfwd> |
| 10 #include <map> | 10 #include <map> |
| (...skipping 333 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 344 bool is_legacy_packaged_app() const; | 344 bool is_legacy_packaged_app() const; |
| 345 bool is_extension() const; | 345 bool is_extension() const; |
| 346 bool is_shared_module() const; | 346 bool is_shared_module() const; |
| 347 bool is_theme() const; | 347 bool is_theme() const; |
| 348 | 348 |
| 349 bool can_be_incognito_enabled() const; | 349 bool can_be_incognito_enabled() const; |
| 350 | 350 |
| 351 void AddWebExtentPattern(const URLPattern& pattern); | 351 void AddWebExtentPattern(const URLPattern& pattern); |
| 352 const URLPatternSet& web_extent() const { return extent_; } | 352 const URLPatternSet& web_extent() const { return extent_; } |
| 353 | 353 |
| 354 bool HasPlatformSpecificResources() const; | |
| 355 bool HasResourcesForPlatform(const std::string& arch) const; | |
| 356 | |
| 357 private: | 354 private: |
| 358 friend class base::RefCountedThreadSafe<Extension>; | 355 friend class base::RefCountedThreadSafe<Extension>; |
| 359 | 356 |
| 360 // Chooses the extension ID for an extension based on a variety of criteria. | 357 // Chooses the extension ID for an extension based on a variety of criteria. |
| 361 // The chosen ID will be set in |manifest|. | 358 // The chosen ID will be set in |manifest|. |
| 362 static bool InitExtensionID(extensions::Manifest* manifest, | 359 static bool InitExtensionID(extensions::Manifest* manifest, |
| 363 const base::FilePath& path, | 360 const base::FilePath& path, |
| 364 const ExtensionId& explicit_id, | 361 const ExtensionId& explicit_id, |
| 365 int creation_flags, | 362 int creation_flags, |
| 366 base::string16* error); | 363 base::string16* error); |
| (...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 476 bool display_in_new_tab_page_; | 473 bool display_in_new_tab_page_; |
| 477 | 474 |
| 478 // Whether the extension has host permissions or user script patterns that | 475 // Whether the extension has host permissions or user script patterns that |
| 479 // imply access to file:/// scheme URLs (the user may not have actually | 476 // imply access to file:/// scheme URLs (the user may not have actually |
| 480 // granted it that access). | 477 // granted it that access). |
| 481 bool wants_file_access_; | 478 bool wants_file_access_; |
| 482 | 479 |
| 483 // The flags that were passed to InitFromValue. | 480 // The flags that were passed to InitFromValue. |
| 484 int creation_flags_; | 481 int creation_flags_; |
| 485 | 482 |
| 486 // The set of archs for which platform-specific resources are present in | |
| 487 // this extension installation. | |
| 488 std::set<std::string> platform_specific_resource_archs_; | |
| 489 | |
| 490 DISALLOW_COPY_AND_ASSIGN(Extension); | 483 DISALLOW_COPY_AND_ASSIGN(Extension); |
| 491 }; | 484 }; |
| 492 | 485 |
| 493 typedef std::vector<scoped_refptr<const Extension> > ExtensionList; | 486 typedef std::vector<scoped_refptr<const Extension> > ExtensionList; |
| 494 typedef std::set<ExtensionId> ExtensionIdSet; | 487 typedef std::set<ExtensionId> ExtensionIdSet; |
| 495 typedef std::vector<ExtensionId> ExtensionIdList; | 488 typedef std::vector<ExtensionId> ExtensionIdList; |
| 496 | 489 |
| 497 // Handy struct to pass core extension info around. | 490 // Handy struct to pass core extension info around. |
| 498 struct ExtensionInfo { | 491 struct ExtensionInfo { |
| 499 ExtensionInfo(const base::DictionaryValue* manifest, | 492 ExtensionInfo(const base::DictionaryValue* manifest, |
| (...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 571 | 564 |
| 572 UpdatedExtensionPermissionsInfo( | 565 UpdatedExtensionPermissionsInfo( |
| 573 const Extension* extension, | 566 const Extension* extension, |
| 574 const PermissionSet* permissions, | 567 const PermissionSet* permissions, |
| 575 Reason reason); | 568 Reason reason); |
| 576 }; | 569 }; |
| 577 | 570 |
| 578 } // namespace extensions | 571 } // namespace extensions |
| 579 | 572 |
| 580 #endif // EXTENSIONS_COMMON_EXTENSION_H_ | 573 #endif // EXTENSIONS_COMMON_EXTENSION_H_ |
| OLD | NEW |