| 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/chrome_content_client.h" | 5 #include "chrome/common/chrome_content_client.h" |
| 6 | 6 |
| 7 #include <stdint.h> | 7 #include <stdint.h> |
| 8 | 8 |
| 9 #include <map> | 9 #include <map> |
| 10 #include <memory> | 10 #include <memory> |
| (...skipping 536 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 547 const base::Version version(WIDEVINE_CDM_VERSION_STRING); | 547 const base::Version version(WIDEVINE_CDM_VERSION_STRING); |
| 548 DCHECK(version.IsValid()); | 548 DCHECK(version.IsValid()); |
| 549 cdms->push_back(content::CdmInfo(kWidevineCdmType, version, cdm_path, | 549 cdms->push_back(content::CdmInfo(kWidevineCdmType, version, cdm_path, |
| 550 codecs_supported)); | 550 codecs_supported)); |
| 551 } | 551 } |
| 552 #endif // defined(WIDEVINE_CDM_AVAILABLE_NOT_COMPONENT) | 552 #endif // defined(WIDEVINE_CDM_AVAILABLE_NOT_COMPONENT) |
| 553 | 553 |
| 554 // TODO(jrummell): Add External Clear Key CDM for testing, if it's available. | 554 // TODO(jrummell): Add External Clear Key CDM for testing, if it's available. |
| 555 } | 555 } |
| 556 | 556 |
| 557 static const url::SchemeWithType kChromeStandardURLSchemes[] = { |
| 558 {extensions::kExtensionScheme, url::SCHEME_WITHOUT_PORT}, |
| 559 {chrome::kChromeNativeScheme, url::SCHEME_WITHOUT_PORT}, |
| 560 {chrome::kChromeSearchScheme, url::SCHEME_WITHOUT_PORT}, |
| 561 {dom_distiller::kDomDistillerScheme, url::SCHEME_WITHOUT_PORT}, |
| 557 #if defined(OS_CHROMEOS) | 562 #if defined(OS_CHROMEOS) |
| 558 static const int kNumChromeStandardURLSchemes = 6; | 563 {chrome::kCrosScheme, url::SCHEME_WITHOUT_PORT}, |
| 559 #else | |
| 560 static const int kNumChromeStandardURLSchemes = 5; | |
| 561 #endif | |
| 562 static const url::SchemeWithType kChromeStandardURLSchemes[ | |
| 563 kNumChromeStandardURLSchemes] = { | |
| 564 {extensions::kExtensionScheme, url::SCHEME_WITHOUT_PORT}, | |
| 565 {chrome::kChromeNativeScheme, url::SCHEME_WITHOUT_PORT}, | |
| 566 {extensions::kExtensionResourceScheme, url::SCHEME_WITHOUT_PORT}, | |
| 567 {chrome::kChromeSearchScheme, url::SCHEME_WITHOUT_PORT}, | |
| 568 {dom_distiller::kDomDistillerScheme, url::SCHEME_WITHOUT_PORT}, | |
| 569 #if defined(OS_CHROMEOS) | |
| 570 {chrome::kCrosScheme, url::SCHEME_WITHOUT_PORT}, | |
| 571 #endif | 564 #endif |
| 572 }; | 565 }; |
| 573 | 566 |
| 574 void ChromeContentClient::AddAdditionalSchemes( | 567 void ChromeContentClient::AddAdditionalSchemes( |
| 575 std::vector<url::SchemeWithType>* standard_schemes, | 568 std::vector<url::SchemeWithType>* standard_schemes, |
| 576 std::vector<url::SchemeWithType>* referrer_schemes, | 569 std::vector<url::SchemeWithType>* referrer_schemes, |
| 577 std::vector<std::string>* savable_schemes) { | 570 std::vector<std::string>* savable_schemes) { |
| 578 for (int i = 0; i < kNumChromeStandardURLSchemes; i++) | 571 for (const url::SchemeWithType& standard_scheme : kChromeStandardURLSchemes) |
| 579 standard_schemes->push_back(kChromeStandardURLSchemes[i]); | 572 standard_schemes->push_back(standard_scheme); |
| 580 | 573 |
| 581 #if defined(OS_ANDROID) | 574 #if defined(OS_ANDROID) |
| 582 referrer_schemes->push_back( | 575 referrer_schemes->push_back( |
| 583 {chrome::kAndroidAppScheme, url::SCHEME_WITHOUT_PORT}); | 576 {chrome::kAndroidAppScheme, url::SCHEME_WITHOUT_PORT}); |
| 584 #endif | 577 #endif |
| 585 | 578 |
| 586 savable_schemes->push_back(extensions::kExtensionScheme); | 579 savable_schemes->push_back(extensions::kExtensionScheme); |
| 587 savable_schemes->push_back(extensions::kExtensionResourceScheme); | |
| 588 savable_schemes->push_back(chrome::kChromeSearchScheme); | 580 savable_schemes->push_back(chrome::kChromeSearchScheme); |
| 589 savable_schemes->push_back(dom_distiller::kDomDistillerScheme); | 581 savable_schemes->push_back(dom_distiller::kDomDistillerScheme); |
| 590 } | 582 } |
| 591 | 583 |
| 592 std::string ChromeContentClient::GetProduct() const { | 584 std::string ChromeContentClient::GetProduct() const { |
| 593 return ::GetProduct(); | 585 return ::GetProduct(); |
| 594 } | 586 } |
| 595 | 587 |
| 596 std::string ChromeContentClient::GetUserAgent() const { | 588 std::string ChromeContentClient::GetUserAgent() const { |
| 597 return ::GetUserAgent(); | 589 return ::GetUserAgent(); |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 645 return false; | 637 return false; |
| 646 } | 638 } |
| 647 #endif | 639 #endif |
| 648 | 640 |
| 649 void ChromeContentClient::AddSecureSchemesAndOrigins( | 641 void ChromeContentClient::AddSecureSchemesAndOrigins( |
| 650 std::set<std::string>* schemes, | 642 std::set<std::string>* schemes, |
| 651 std::set<GURL>* origins) { | 643 std::set<GURL>* origins) { |
| 652 schemes->insert(chrome::kChromeSearchScheme); | 644 schemes->insert(chrome::kChromeSearchScheme); |
| 653 schemes->insert(content::kChromeUIScheme); | 645 schemes->insert(content::kChromeUIScheme); |
| 654 schemes->insert(extensions::kExtensionScheme); | 646 schemes->insert(extensions::kExtensionScheme); |
| 655 schemes->insert(extensions::kExtensionResourceScheme); | |
| 656 GetSecureOriginWhitelist(origins); | 647 GetSecureOriginWhitelist(origins); |
| 657 } | 648 } |
| 658 | 649 |
| 659 void ChromeContentClient::AddServiceWorkerSchemes( | 650 void ChromeContentClient::AddServiceWorkerSchemes( |
| 660 std::set<std::string>* schemes) { | 651 std::set<std::string>* schemes) { |
| 661 #if BUILDFLAG(ENABLE_EXTENSIONS) | 652 #if BUILDFLAG(ENABLE_EXTENSIONS) |
| 662 if (extensions::feature_util::ExtensionServiceWorkersEnabled()) | 653 if (extensions::feature_util::ExtensionServiceWorkersEnabled()) |
| 663 schemes->insert(extensions::kExtensionScheme); | 654 schemes->insert(extensions::kExtensionScheme); |
| 664 #endif | 655 #endif |
| 665 } | 656 } |
| 666 | 657 |
| 667 bool ChromeContentClient::AllowScriptExtensionForServiceWorker( | 658 bool ChromeContentClient::AllowScriptExtensionForServiceWorker( |
| 668 const GURL& script_url) { | 659 const GURL& script_url) { |
| 669 #if BUILDFLAG(ENABLE_EXTENSIONS) | 660 #if BUILDFLAG(ENABLE_EXTENSIONS) |
| 670 return script_url.SchemeIs(extensions::kExtensionScheme) || | 661 return script_url.SchemeIs(extensions::kExtensionScheme); |
| 671 script_url.SchemeIs(extensions::kExtensionResourceScheme); | |
| 672 #else | 662 #else |
| 673 return false; | 663 return false; |
| 674 #endif | 664 #endif |
| 675 } | 665 } |
| 676 | 666 |
| 677 bool ChromeContentClient::IsSupplementarySiteIsolationModeEnabled() { | 667 bool ChromeContentClient::IsSupplementarySiteIsolationModeEnabled() { |
| 678 #if BUILDFLAG(ENABLE_EXTENSIONS) | 668 #if BUILDFLAG(ENABLE_EXTENSIONS) |
| 679 return extensions::IsIsolateExtensionsEnabled(); | 669 return extensions::IsIsolateExtensionsEnabled(); |
| 680 #else | 670 #else |
| 681 return false; | 671 return false; |
| 682 #endif | 672 #endif |
| 683 } | 673 } |
| 684 | 674 |
| 685 content::OriginTrialPolicy* ChromeContentClient::GetOriginTrialPolicy() { | 675 content::OriginTrialPolicy* ChromeContentClient::GetOriginTrialPolicy() { |
| 686 if (!origin_trial_policy_) | 676 if (!origin_trial_policy_) |
| 687 origin_trial_policy_ = base::MakeUnique<ChromeOriginTrialPolicy>(); | 677 origin_trial_policy_ = base::MakeUnique<ChromeOriginTrialPolicy>(); |
| 688 return origin_trial_policy_.get(); | 678 return origin_trial_policy_.get(); |
| 689 } | 679 } |
| 690 | 680 |
| 691 #if defined(OS_ANDROID) | 681 #if defined(OS_ANDROID) |
| 692 media::MediaClientAndroid* ChromeContentClient::GetMediaClientAndroid() { | 682 media::MediaClientAndroid* ChromeContentClient::GetMediaClientAndroid() { |
| 693 return new ChromeMediaClientAndroid(); | 683 return new ChromeMediaClientAndroid(); |
| 694 } | 684 } |
| 695 #endif // OS_ANDROID | 685 #endif // OS_ANDROID |
| OLD | NEW |