diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2023-10-27 17:02:53 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2023-10-27 17:04:08 +0200 |
commit | 3dce9b5818576f04ce21cec4b3686eda012e5b65 (patch) | |
tree | fe3d59c6da3e62c74563710ba63996585293c743 /chromium/chrome/browser/extensions/api/management/chrome_management_api_delegate.cc | |
parent | 5a424f4a7b188b75da63eb697f63558af0b17f6f (diff) |
BASELINE: Update Chromium to 118.0.5993.24
Change-Id: I8373334b8ea8225ab4d934dc676aabc6a85a7efa
Diffstat (limited to 'chromium/chrome/browser/extensions/api/management/chrome_management_api_delegate.cc')
-rw-r--r-- | chromium/chrome/browser/extensions/api/management/chrome_management_api_delegate.cc | 120 |
1 files changed, 1 insertions, 119 deletions
diff --git a/chromium/chrome/browser/extensions/api/management/chrome_management_api_delegate.cc b/chromium/chrome/browser/extensions/api/management/chrome_management_api_delegate.cc index f5ea98249a1..98847287ab3 100644 --- a/chromium/chrome/browser/extensions/api/management/chrome_management_api_delegate.cc +++ b/chromium/chrome/browser/extensions/api/management/chrome_management_api_delegate.cc @@ -9,7 +9,6 @@ #include "base/functional/bind.h" #include "base/memory/raw_ptr.h" -#include "base/strings/strcat.h" #include "base/strings/utf_string_conversions.h" #include "build/build_config.h" #include "build/chromeos_buildflags.h" @@ -63,65 +62,20 @@ #include "extensions/common/api/management.h" #include "extensions/common/extension.h" #include "extensions/common/extension_urls.h" -#include "services/data_decoder/public/cpp/data_decoder.h" #include "third_party/blink/public/mojom/manifest/display_mode.mojom.h" #include "third_party/blink/public/mojom/window_features/window_features.mojom.h" #if BUILDFLAG(IS_CHROMEOS_ASH) -#include "ash/components/arc/arc_util.h" -#include "ash/components/arc/mojom/intent_helper.mojom.h" -#include "ash/components/arc/session/arc_bridge_service.h" -#include "ash/components/arc/session/arc_service_manager.h" -#include "chrome/browser/ash/app_list/arc/arc_app_utils.h" -#include "chrome/browser/ash/arc/arc_util.h" #include "chrome/browser/ash/login/demo_mode/demo_session.h" #endif // BUILDFLAG(IS_CHROMEOS_ASH) namespace { - -#if BUILDFLAG(IS_CHROMEOS_ASH) -const char kPlayIntentPrefix[] = - "https://play.google.com/store/apps/details?id="; -const char kChromeWebStoreReferrer[] = "&referrer=chrome_web_store"; -#endif // BUILDFLAG(IS_CHROMEOS_ASH) - -using InstallAndroidAppCallback = - extensions::ManagementAPIDelegate::InstallAndroidAppCallback; -using AndroidAppInstallStatusCallback = - extensions::ManagementAPIDelegate::AndroidAppInstallStatusCallback; using InstallOrLaunchWebAppCallback = extensions::ManagementAPIDelegate::InstallOrLaunchWebAppCallback; using InstallOrLaunchWebAppResult = extensions::ManagementAPIDelegate::InstallOrLaunchWebAppResult; using InstallableCheckResult = web_app::InstallableCheckResult; -#if BUILDFLAG(IS_CHROMEOS_ASH) -void OnDidCheckForIntentToPlayStore(const std::string& intent, - InstallAndroidAppCallback callback, - bool installable) { - if (!installable) { - std::move(callback).Run(false); - return; - } - - auto* arc_service_manager = arc::ArcServiceManager::Get(); - if (!arc_service_manager) { - std::move(callback).Run(false); - return; - } - - auto* instance = ARC_GET_INSTANCE_FOR_METHOD( - arc_service_manager->arc_bridge_service()->intent_helper(), HandleUrl); - if (!instance) { - std::move(callback).Run(false); - return; - } - - instance->HandleUrl(intent, arc::kPlayStorePackage); - std::move(callback).Run(true); -} -#endif // BUILDFLAG(IS_CHROMEOS_ASH) - class ManagementSetEnabledFunctionInstallPromptDelegate : public extensions::InstallPromptDelegate { public: @@ -266,7 +220,7 @@ class ChromeAppForLinkDelegate : public extensions::AppForLinkDelegate { } #endif // BUILDFLAG(IS_CHROMEOS_ASH) - auto web_app_info = std::make_unique<WebAppInstallInfo>(); + auto web_app_info = std::make_unique<web_app::WebAppInstallInfo>(); web_app_info->title = base::UTF8ToUTF16(title); web_app_info->start_url = launch_url; web_app_info->display_mode = web_app::DisplayMode::kBrowser; @@ -491,18 +445,6 @@ extensions::LaunchType ChromeManagementAPIDelegate::GetLaunchType( return extensions::GetLaunchType(prefs, extension); } -void ChromeManagementAPIDelegate:: - GetPermissionWarningsByManifestFunctionDelegate( - extensions::ManagementGetPermissionWarningsByManifestFunction* function, - const std::string& manifest_str) const { - data_decoder::DataDecoder::ParseJsonIsolated( - manifest_str, - base::BindOnce( - &extensions::ManagementGetPermissionWarningsByManifestFunction:: - OnParse, - function)); -} - std::unique_ptr<extensions::InstallPromptDelegate> ChromeManagementAPIDelegate::SetEnabledFunctionDelegate( content::WebContents* web_contents, @@ -612,66 +554,6 @@ void ChromeManagementAPIDelegate::InstallOrLaunchReplacementWebApp( std::move(callback), std::move(web_contents))); } -bool ChromeManagementAPIDelegate::CanContextInstallAndroidApps( - content::BrowserContext* context) const { -#if BUILDFLAG(IS_CHROMEOS_ASH) - return arc::IsArcAllowedForProfile(Profile::FromBrowserContext(context)); -#else - return false; -#endif // BUILDFLAG(IS_CHROMEOS_ASH) -} - -void ChromeManagementAPIDelegate::CheckAndroidAppInstallStatus( - const std::string& package_name, - AndroidAppInstallStatusCallback callback) const { -#if BUILDFLAG(IS_CHROMEOS_ASH) - auto* arc_service_manager = arc::ArcServiceManager::Get(); - if (!arc_service_manager) { - std::move(callback).Run(false); - return; - } - - auto* instance = ARC_GET_INSTANCE_FOR_METHOD( - arc_service_manager->arc_bridge_service()->app(), IsInstallable); - if (!instance) { - std::move(callback).Run(false); - return; - } - - instance->IsInstallable(package_name, std::move(callback)); -#else - std::move(callback).Run(false); -#endif // BUILDFLAG(IS_CHROMEOS_ASH) -} - -void ChromeManagementAPIDelegate::InstallReplacementAndroidApp( - const std::string& package_name, - InstallAndroidAppCallback callback) const { -#if BUILDFLAG(IS_CHROMEOS_ASH) - std::string intent = - base::StrCat({kPlayIntentPrefix, package_name, kChromeWebStoreReferrer}); - - auto* arc_service_manager = arc::ArcServiceManager::Get(); - if (!arc_service_manager) { - std::move(callback).Run(false); - return; - } - - auto* instance = ARC_GET_INSTANCE_FOR_METHOD( - arc_service_manager->arc_bridge_service()->app(), IsInstallable); - if (!instance) { - std::move(callback).Run(false); - return; - } - - instance->IsInstallable( - package_name, base::BindOnce(&OnDidCheckForIntentToPlayStore, intent, - std::move(callback))); -#else - std::move(callback).Run(false); -#endif // BUILDFLAG(IS_CHROMEOS_ASH) -} - void ChromeManagementAPIDelegate::EnableExtension( content::BrowserContext* context, const std::string& extension_id) const { |