[WebAPKRestore] Move web_app_url_loader to components/webapps/browser
so it can be shared by Android for restoring webapps.
Bug: 41496289
Change-Id: Ia43ec81edebac08e89d44c60e6d4ea0b84ee75a6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5402330
Reviewed-by: Glenn Hartmann <hartmanng@chromium.org>
Reviewed-by: Hidehiko Abe <hidehiko@chromium.org>
Reviewed-by: Adam Rice <ricea@chromium.org>
Reviewed-by: Daniel Murphy <dmurph@chromium.org>
Commit-Queue: Ella Ge <eirage@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1282369}
diff --git a/chrome/browser/ash/app_mode/web_app/web_kiosk_app_service_launcher_unittest.cc b/chrome/browser/ash/app_mode/web_app/web_kiosk_app_service_launcher_unittest.cc
index 98e109c..a795abb 100644
--- a/chrome/browser/ash/app_mode/web_app/web_kiosk_app_service_launcher_unittest.cc
+++ b/chrome/browser/ash/app_mode/web_app/web_kiosk_app_service_launcher_unittest.cc
@@ -35,13 +35,13 @@
#include "chrome/browser/web_applications/web_app_provider.h"
#include "chrome/browser/web_applications/web_app_registry_update.h"
#include "chrome/browser/web_applications/web_app_ui_manager.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/test/base/browser_with_test_window_test.h"
#include "chrome/test/base/testing_profile.h"
#include "chromeos/ash/components/login/login_state/login_state.h"
#include "components/services/app_service/public/cpp/instance.h"
#include "components/webapps/browser/install_result_code.h"
#include "components/webapps/browser/installable/installable_metrics.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "components/webapps/common/web_app_id.h"
#include "components/webapps/common/web_page_metadata.mojom.h"
#include "content/public/browser/web_contents.h"
@@ -138,7 +138,7 @@
auto& install_page_state =
web_contents_manager().GetOrCreatePageState(install_url);
install_page_state.url_load_result =
- web_app::WebAppUrlLoaderResult::kUrlLoaded;
+ webapps::WebAppUrlLoaderResult::kUrlLoaded;
install_page_state.redirection_url = std::nullopt;
install_page_state.opt_metadata =
diff --git a/chrome/browser/ash/system_web_apps/system_web_app_background_task.cc b/chrome/browser/ash/system_web_apps/system_web_app_background_task.cc
index 70323f0..26c8c8a 100644
--- a/chrome/browser/ash/system_web_apps/system_web_app_background_task.cc
+++ b/chrome/browser/ash/system_web_apps/system_web_app_background_task.cc
@@ -22,7 +22,7 @@
const SystemWebAppBackgroundTaskInfo& info)
: profile_(profile),
web_contents_(nullptr),
- web_app_url_loader_(std::make_unique<web_app::WebAppUrlLoader>()),
+ web_app_url_loader_(std::make_unique<webapps::WebAppUrlLoader>()),
timer_(std::make_unique<base::OneShotTimer>()),
url_(info.url),
period_(info.period),
@@ -119,15 +119,16 @@
web_contents_->SetWebPreferences(prefs);
web_app_url_loader_->LoadUrl(
url_, web_contents_.get(),
- web_app::WebAppUrlLoader::UrlComparison::kExact,
+ webapps::WebAppUrlLoader::UrlComparison::kExact,
base::BindOnce(&SystemWebAppBackgroundTask::OnPageReady,
weak_ptr_factory_.GetWeakPtr()));
}
void SystemWebAppBackgroundTask::OnPageReady(
- web_app::WebAppUrlLoader::Result result) {
- if (result == web_app::WebAppUrlLoader::Result::kUrlLoaded)
+ webapps::WebAppUrlLoaderResult result) {
+ if (result == webapps::WebAppUrlLoaderResult::kUrlLoaded) {
opened_count_++;
+ }
}
} // namespace ash
diff --git a/chrome/browser/ash/system_web_apps/system_web_app_background_task.h b/chrome/browser/ash/system_web_apps/system_web_app_background_task.h
index d440c39..dce1075 100644
--- a/chrome/browser/ash/system_web_apps/system_web_app_background_task.h
+++ b/chrome/browser/ash/system_web_apps/system_web_app_background_task.h
@@ -18,8 +18,8 @@
#include "base/timer/timer.h"
#include "chrome/browser/ash/system_web_apps/types/system_web_app_background_task_info.h"
#include "chrome/browser/profiles/profile.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "components/prefs/pref_change_registrar.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/browser/web_contents.h"
#include "content/public/browser/web_contents_delegate.h"
@@ -85,13 +85,13 @@
return polling_since_time_;
}
- web_app::WebAppUrlLoader* UrlLoaderForTesting() {
+ webapps::WebAppUrlLoader* UrlLoaderForTesting() {
return web_app_url_loader_.get();
}
// Set the url loader for testing. Takes ownership of the argument.
void SetUrlLoaderForTesting(
- std::unique_ptr<web_app::WebAppUrlLoader> loader) {
+ std::unique_ptr<webapps::WebAppUrlLoader> loader) {
web_app_url_loader_ = std::move(loader);
}
@@ -115,14 +115,14 @@
void MaybeOpenPage();
void NavigateBackgroundPage();
- void OnPageReady(web_app::WebAppUrlLoader::Result);
+ void OnPageReady(webapps::WebAppUrlLoaderResult);
void CloseWebContents(content::WebContents* contents);
raw_ptr<Profile> profile_;
SystemWebAppType app_type_;
std::unique_ptr<content::WebContents> web_contents_;
- std::unique_ptr<web_app::WebAppUrlLoader> web_app_url_loader_;
+ std::unique_ptr<webapps::WebAppUrlLoader> web_app_url_loader_;
std::unique_ptr<base::OneShotTimer> timer_;
TimerState state_;
GURL url_;
diff --git a/chrome/browser/ash/system_web_apps/system_web_app_manager_unittest.cc b/chrome/browser/ash/system_web_apps/system_web_app_manager_unittest.cc
index dd55452..82fa77139 100644
--- a/chrome/browser/ash/system_web_apps/system_web_app_manager_unittest.cc
+++ b/chrome/browser/ash/system_web_apps/system_web_app_manager_unittest.cc
@@ -1235,7 +1235,7 @@
web_app::TestWebAppUrlLoader* loader = url_loader.get();
timers[0]->SetUrlLoaderForTesting(std::move(url_loader));
loader->SetNextLoadUrlResult(AppUrl1(),
- web_app::WebAppUrlLoader::Result::kUrlLoaded);
+ webapps::WebAppUrlLoaderResult::kUrlLoaded);
EXPECT_EQ(base::Seconds(60), timers[0]->period_for_testing());
base::RunLoop().RunUntilIdle();
@@ -1251,7 +1251,7 @@
EXPECT_EQ(1u, timers[0]->opened_count_for_testing());
loader->SetNextLoadUrlResult(AppUrl1(),
- web_app::WebAppUrlLoader::Result::kUrlLoaded);
+ webapps::WebAppUrlLoaderResult::kUrlLoaded);
EXPECT_EQ(SystemWebAppBackgroundTask::WAIT_PERIOD,
timers[0]->get_state_for_testing());
@@ -1262,7 +1262,7 @@
EXPECT_EQ(2u, timers[0]->opened_count_for_testing());
loader->SetNextLoadUrlResult(
- AppUrl1(), web_app::WebAppUrlLoader::Result::kFailedUnknownReason);
+ AppUrl1(), webapps::WebAppUrlLoaderResult::kFailedUnknownReason);
task_environment()->FastForwardBy(base::Seconds(61));
@@ -1289,7 +1289,7 @@
loader = url_loader.get();
timers[0]->SetUrlLoaderForTesting(std::move(url_loader));
loader->SetNextLoadUrlResult(
- AppUrl1(), web_app::WebAppUrlLoader::Result::kUrlLoaded);
+ AppUrl1(), webapps::WebAppUrlLoaderResult::kUrlLoaded);
}));
system_web_app_manager().Start();
waiter.Wait();
@@ -1307,7 +1307,7 @@
timers[0]->get_state_for_testing());
loader->SetNextLoadUrlResult(AppUrl1(),
- web_app::WebAppUrlLoader::Result::kUrlLoaded);
+ webapps::WebAppUrlLoaderResult::kUrlLoaded);
task_environment()->FastForwardBy(base::Seconds(300));
@@ -1332,7 +1332,7 @@
loader = url_loader.get();
timers[0]->SetUrlLoaderForTesting(std::move(url_loader));
loader->SetNextLoadUrlResult(
- AppUrl1(), web_app::WebAppUrlLoader::Result::kUrlLoaded);
+ AppUrl1(), webapps::WebAppUrlLoaderResult::kUrlLoaded);
}));
system_web_app_manager().Start();
waiter.Wait();
@@ -1354,7 +1354,7 @@
timers[0]->get_state_for_testing());
loader->SetNextLoadUrlResult(AppUrl1(),
- web_app::WebAppUrlLoader::Result::kUrlLoaded);
+ webapps::WebAppUrlLoaderResult::kUrlLoaded);
task_environment()->FastForwardBy(base::Seconds(300));
@@ -1380,7 +1380,7 @@
loader = url_loader.get();
timers[0]->SetUrlLoaderForTesting(std::move(url_loader));
loader->SetNextLoadUrlResult(
- AppUrl1(), web_app::WebAppUrlLoader::Result::kUrlLoaded);
+ AppUrl1(), webapps::WebAppUrlLoaderResult::kUrlLoaded);
}));
system_web_app_manager().Start();
waiter.Wait();
@@ -1410,7 +1410,7 @@
EXPECT_EQ(1u, timers[0]->opened_count_for_testing());
EXPECT_EQ(base::Time(), timers[0]->polling_since_time_for_testing());
loader->SetNextLoadUrlResult(AppUrl1(),
- web_app::WebAppUrlLoader::Result::kUrlLoaded);
+ webapps::WebAppUrlLoaderResult::kUrlLoaded);
task_environment()->FastForwardBy(base::Seconds(300));
EXPECT_EQ(2u, timers[0]->timer_activated_count_for_testing());
@@ -1419,7 +1419,7 @@
{
ui::ScopedSetIdleState scoped_locked(ui::IDLE_STATE_LOCKED);
loader->SetNextLoadUrlResult(AppUrl1(),
- web_app::WebAppUrlLoader::Result::kUrlLoaded);
+ webapps::WebAppUrlLoaderResult::kUrlLoaded);
task_environment()->FastForwardBy(base::Seconds(300));
EXPECT_EQ(SystemWebAppBackgroundTask::WAIT_PERIOD,
timers[0]->get_state_for_testing());
@@ -1446,7 +1446,7 @@
loader = url_loader.get();
timers[0]->SetUrlLoaderForTesting(std::move(url_loader));
loader->SetNextLoadUrlResult(
- AppUrl1(), web_app::WebAppUrlLoader::Result::kUrlLoaded);
+ AppUrl1(), webapps::WebAppUrlLoaderResult::kUrlLoaded);
}));
system_web_app_manager().Start();
waiter.Wait();
@@ -1483,7 +1483,7 @@
EXPECT_EQ(1u, timers[0]->opened_count_for_testing());
loader->SetNextLoadUrlResult(AppUrl1(),
- web_app::WebAppUrlLoader::Result::kUrlLoaded);
+ webapps::WebAppUrlLoaderResult::kUrlLoaded);
}
TEST_F(SystemWebAppManagerTest,
diff --git a/chrome/browser/lacros/app_mode/web_kiosk_installer_lacros_unittest.cc b/chrome/browser/lacros/app_mode/web_kiosk_installer_lacros_unittest.cc
index 12263d4..6effcf9 100644
--- a/chrome/browser/lacros/app_mode/web_kiosk_installer_lacros_unittest.cc
+++ b/chrome/browser/lacros/app_mode/web_kiosk_installer_lacros_unittest.cc
@@ -15,12 +15,12 @@
#include "chrome/browser/web_applications/test/fake_web_contents_manager.h"
#include "chrome/browser/web_applications/test/web_app_install_test_utils.h"
#include "chrome/browser/web_applications/web_app_helpers.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/test/base/testing_browser_process.h"
#include "chrome/test/base/testing_profile.h"
#include "chrome/test/base/testing_profile_manager.h"
#include "chromeos/crosapi/mojom/web_kiosk_service.mojom.h"
#include "chromeos/lacros/lacros_service.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "components/webapps/common/web_app_id.h"
#include "components/webapps/common/web_page_metadata.mojom.h"
#include "content/public/test/browser_task_environment.h"
@@ -131,7 +131,7 @@
auto& install_page_state =
web_contents_manager().GetOrCreatePageState(install_url);
install_page_state.url_load_result =
- web_app::WebAppUrlLoaderResult::kUrlLoaded;
+ webapps::WebAppUrlLoaderResult::kUrlLoaded;
install_page_state.redirection_url = std::nullopt;
install_page_state.opt_metadata =
diff --git a/chrome/browser/ui/views/web_apps/isolated_web_apps/isolated_web_app_installer_view_controller_unittest.cc b/chrome/browser/ui/views/web_apps/isolated_web_apps/isolated_web_app_installer_view_controller_unittest.cc
index 36c4300..3eca657 100644
--- a/chrome/browser/ui/views/web_apps/isolated_web_apps/isolated_web_app_installer_view_controller_unittest.cc
+++ b/chrome/browser/ui/views/web_apps/isolated_web_apps/isolated_web_app_installer_view_controller_unittest.cc
@@ -258,7 +258,7 @@
"/.well-known/_generated_install_page.html"}));
auto& page_state = fake_web_contents_manager.GetOrCreatePageState(url);
- page_state.url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ page_state.url_load_result = webapps::WebAppUrlLoaderResult::kUrlLoaded;
page_state.error_code = webapps::InstallableStatusCode::NO_ERROR_DETECTED;
page_state.manifest_url = iwa_url.Resolve("manifest.webmanifest");
page_state.valid_manifest_for_web_app = true;
diff --git a/chrome/browser/ui/web_applications/web_app_profile_deletion_browsertest.cc b/chrome/browser/ui/web_applications/web_app_profile_deletion_browsertest.cc
index 42e2194..bb6e30f 100644
--- a/chrome/browser/ui/web_applications/web_app_profile_deletion_browsertest.cc
+++ b/chrome/browser/ui/web_applications/web_app_profile_deletion_browsertest.cc
@@ -26,10 +26,10 @@
#include "chrome/browser/web_applications/web_app_registrar.h"
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
#include "chrome/browser/web_applications/web_contents/web_app_icon_downloader.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/test/base/profile_destruction_waiter.h"
#include "components/user_manager/user_manager.h"
#include "components/webapps/browser/installable/installable_logging.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "components/webapps/common/web_app_id.h"
#include "content/public/test/browser_test.h"
#include "third_party/blink/public/mojom/manifest/manifest.mojom.h"
@@ -271,20 +271,20 @@
IN_PROC_BROWSER_TEST_F(WebAppProfileDeletionTest_WebContentsGracefulShutdown,
UrlLoading) {
ASSERT_TRUE(embedded_test_server()->Start());
- WebAppUrlLoader loader;
+ webapps::WebAppUrlLoader loader;
std::unique_ptr<content::WebContents> deleting_web_contents =
CreateWebContentsScheduledForDeletion();
- base::test::TestFuture<WebAppUrlLoaderResult> loader_result;
+ base::test::TestFuture<webapps::WebAppUrlLoaderResult> loader_result;
loader.LoadUrl(embedded_test_server()->GetURL("/title1.html"),
deleting_web_contents.get(),
- WebAppUrlLoader::UrlComparison::kExact,
+ webapps::WebAppUrlLoader::UrlComparison::kExact,
loader_result.GetCallback());
EXPECT_TRUE(loader_result.Wait());
- EXPECT_EQ(loader_result.Get<WebAppUrlLoaderResult>(),
- WebAppUrlLoaderResult::kFailedWebContentsDestroyed);
+ EXPECT_EQ(loader_result.Get<webapps::WebAppUrlLoaderResult>(),
+ webapps::WebAppUrlLoaderResult::kFailedWebContentsDestroyed);
}
IN_PROC_BROWSER_TEST_F(WebAppProfileDeletionTest_WebContentsGracefulShutdown,
diff --git a/chrome/browser/web_applications/BUILD.gn b/chrome/browser/web_applications/BUILD.gn
index c817e7d..51cedac 100644
--- a/chrome/browser/web_applications/BUILD.gn
+++ b/chrome/browser/web_applications/BUILD.gn
@@ -335,8 +335,6 @@
"web_contents/web_app_data_retriever.h",
"web_contents/web_app_icon_downloader.cc",
"web_contents/web_app_icon_downloader.h",
- "web_contents/web_app_url_loader.cc",
- "web_contents/web_app_url_loader.h",
"web_contents/web_contents_manager.cc",
"web_contents/web_contents_manager.h",
]
@@ -862,7 +860,6 @@
"web_app_utils_unittest.cc",
"web_contents/web_app_data_retriever_unittest.cc",
"web_contents/web_app_icon_downloader_unittest.cc",
- "web_contents/web_app_url_loader_unittest.cc",
]
if (is_win) {
@@ -1031,7 +1028,6 @@
"web_app_internals_browsertest.cc",
"web_app_origin_association_manager_browsertest.cc",
"web_app_scope_extensions_browsertest.cc",
- "web_contents/web_app_url_loader_browsertest.cc",
]
if (is_chromeos) {
diff --git a/chrome/browser/web_applications/commands/external_app_resolution_command.cc b/chrome/browser/web_applications/commands/external_app_resolution_command.cc
index f7129fe..11f6e7e 100644
--- a/chrome/browser/web_applications/commands/external_app_resolution_command.cc
+++ b/chrome/browser/web_applications/commands/external_app_resolution_command.cc
@@ -40,12 +40,12 @@
#include "chrome/browser/web_applications/web_app_registrar.h"
#include "chrome/browser/web_applications/web_app_ui_manager.h"
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/browser/web_applications/web_contents/web_contents_manager.h"
#include "chrome/common/chrome_features.h"
#include "components/services/app_service/public/cpp/app_launch_util.h"
#include "components/webapps/browser/install_result_code.h"
#include "components/webapps/browser/uninstall_result_code.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "components/webapps/common/web_app_id.h"
#include "content/public/browser/web_contents.h"
@@ -118,7 +118,7 @@
url_loader_->LoadUrl(
install_options_.install_url, web_contents_.get(),
- WebAppUrlLoader::UrlComparison::kSameOrigin,
+ webapps::WebAppUrlLoader::UrlComparison::kSameOrigin,
base::BindOnce(
&ExternalAppResolutionCommand::OnUrlLoadedAndBranchInstallation,
weak_ptr_factory_.GetWeakPtr()));
@@ -140,8 +140,8 @@
}
void ExternalAppResolutionCommand::OnUrlLoadedAndBranchInstallation(
- WebAppUrlLoader::Result result) {
- if (result == WebAppUrlLoader::Result::kUrlLoaded) {
+ webapps::WebAppUrlLoaderResult result) {
+ if (result == webapps::WebAppUrlLoaderResult::kUrlLoaded) {
data_retriever_->GetWebAppInstallInfo(
web_contents_.get(),
base::BindOnce(
@@ -180,7 +180,7 @@
// Avoid counting an error if we are shutting down. This matches later
// stages of install where if the WebContents is destroyed we return early.
- if (result == WebAppUrlLoader::Result::kFailedWebContentsDestroyed) {
+ if (result == webapps::WebAppUrlLoaderResult::kFailedWebContentsDestroyed) {
Abort(webapps::InstallResultCode::kWebContentsDestroyed);
return;
}
@@ -189,21 +189,21 @@
webapps::InstallResultCode::kInstallURLLoadFailed;
switch (result) {
- case WebAppUrlLoader::Result::kUrlLoaded:
- case WebAppUrlLoader::Result::kFailedWebContentsDestroyed:
+ case webapps::WebAppUrlLoaderResult::kUrlLoaded:
+ case webapps::WebAppUrlLoaderResult::kFailedWebContentsDestroyed:
// Handled above.
NOTREACHED();
break;
- case WebAppUrlLoader::Result::kRedirectedUrlLoaded:
+ case webapps::WebAppUrlLoaderResult::kRedirectedUrlLoaded:
code = webapps::InstallResultCode::kInstallURLRedirected;
break;
- case WebAppUrlLoader::Result::kFailedUnknownReason:
+ case webapps::WebAppUrlLoaderResult::kFailedUnknownReason:
code = webapps::InstallResultCode::kInstallURLLoadFailed;
break;
- case WebAppUrlLoader::Result::kFailedPageTookTooLong:
+ case webapps::WebAppUrlLoaderResult::kFailedPageTookTooLong:
code = webapps::InstallResultCode::kInstallURLLoadTimeOut;
break;
- case WebAppUrlLoader::Result::kFailedErrorPageLoaded:
+ case webapps::WebAppUrlLoaderResult::kFailedErrorPageLoaded:
code = webapps::InstallResultCode::kInstallURLLoadFailed;
break;
}
@@ -297,7 +297,7 @@
const GURL kAboutBlankURL = GURL(url::kAboutBlankURL);
url_loader_->LoadUrl(
kAboutBlankURL, web_contents_.get(),
- WebAppUrlLoader::UrlComparison::kExact,
+ webapps::WebAppUrlLoader::UrlComparison::kExact,
base::BindOnce(
&ExternalAppResolutionCommand::OnPreparedForIconRetrieving,
weak_ptr_factory_.GetWeakPtr(), std::move(icon_urls),
@@ -305,13 +305,13 @@
return;
}
OnPreparedForIconRetrieving(std::move(icon_urls), skip_page_favicons,
- WebAppUrlLoaderResult::kUrlLoaded);
+ webapps::WebAppUrlLoaderResult::kUrlLoaded);
}
void ExternalAppResolutionCommand::OnPreparedForIconRetrieving(
IconUrlSizeSet icon_urls,
bool skip_page_favicons,
- WebAppUrlLoaderResult result) {
+ webapps::WebAppUrlLoaderResult result) {
data_retriever_->GetIcons(
web_contents_.get(), std::move(icon_urls), skip_page_favicons,
/*fail_all_if_any_fail=*/false,
diff --git a/chrome/browser/web_applications/commands/external_app_resolution_command.h b/chrome/browser/web_applications/commands/external_app_resolution_command.h
index 18b6d4e..547d4ec 100644
--- a/chrome/browser/web_applications/commands/external_app_resolution_command.h
+++ b/chrome/browser/web_applications/commands/external_app_resolution_command.h
@@ -25,7 +25,6 @@
#include "chrome/browser/web_applications/web_app_install_info.h"
#include "chrome/browser/web_applications/web_app_install_utils.h"
#include "chrome/browser/web_applications/web_app_logging.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "components/services/app_service/public/cpp/app_launch_util.h"
#include "components/webapps/browser/installable/installable_logging.h"
#include "components/webapps/browser/installable/installable_metrics.h"
@@ -39,6 +38,11 @@
class WebContents;
}
+namespace webapps {
+class WebAppUrlLoader;
+enum class WebAppUrlLoaderResult;
+} // namespace webapps
+
namespace web_app {
class InstallPlaceholderJob;
@@ -86,7 +90,7 @@
// agent got redirected to a different origin and a placeholder installation
// is configured as fallback).
// * offline installation from install info (in all other cases).
- void OnUrlLoadedAndBranchInstallation(WebAppUrlLoader::Result result);
+ void OnUrlLoadedAndBranchInstallation(webapps::WebAppUrlLoaderResult result);
// Regular installation path:
void OnGetWebAppInstallInfoInCommand(
@@ -97,7 +101,7 @@
webapps::InstallableStatusCode error_code);
void OnPreparedForIconRetrieving(IconUrlSizeSet icon_urls,
bool skip_page_favicons,
- WebAppUrlLoaderResult result);
+ webapps::WebAppUrlLoaderResult result);
void OnIconsRetrievedUpgradeLockDescription(
IconsDownloadedResult result,
IconsMap icons_map,
@@ -162,7 +166,7 @@
raw_ref<Profile> profile_;
raw_ptr<content::WebContents> web_contents_ = nullptr;
- std::unique_ptr<WebAppUrlLoader> url_loader_;
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader_;
std::unique_ptr<WebAppDataRetriever> data_retriever_;
std::unique_ptr<WebAppInstallInfo> web_app_info_;
diff --git a/chrome/browser/web_applications/commands/external_app_resolution_command_unittest.cc b/chrome/browser/web_applications/commands/external_app_resolution_command_unittest.cc
index d47d82d0..59e1d4e 100644
--- a/chrome/browser/web_applications/commands/external_app_resolution_command_unittest.cc
+++ b/chrome/browser/web_applications/commands/external_app_resolution_command_unittest.cc
@@ -37,11 +37,11 @@
#include "chrome/browser/web_applications/web_app_install_info.h"
#include "chrome/browser/web_applications/web_app_install_utils.h"
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/browser/web_applications/web_contents/web_contents_manager.h"
#include "components/services/app_service/public/cpp/icon_info.h"
#include "components/webapps/browser/install_result_code.h"
#include "components/webapps/browser/installable/installable_logging.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "components/webapps/common/web_app_id.h"
#include "net/http/http_status_code.h"
#include "testing/gmock/include/gmock/gmock.h"
@@ -56,7 +56,8 @@
struct PageStateOptions {
bool empty_web_app_info = false;
- WebAppUrlLoaderResult url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ webapps::WebAppUrlLoaderResult url_load_result =
+ webapps::WebAppUrlLoaderResult::kUrlLoaded;
std::optional<GURL> manifest_id;
};
@@ -339,9 +340,9 @@
ExternalInstallSource::kExternalPolicy);
install_options.install_placeholder = true;
- SetPageState(
- install_options,
- {.url_load_result = WebAppUrlLoaderResult::kRedirectedUrlLoaded});
+ SetPageState(install_options,
+ {.url_load_result =
+ webapps::WebAppUrlLoaderResult::kRedirectedUrlLoaded});
auto result = InstallAndWait(install_options);
@@ -374,8 +375,9 @@
// Install a placeholder app.
{
- SetPageState(options, {.url_load_result =
- WebAppUrlLoaderResult::kRedirectedUrlLoaded});
+ SetPageState(options,
+ {.url_load_result =
+ webapps::WebAppUrlLoaderResult::kRedirectedUrlLoaded});
auto result = InstallAndWait(options);
@@ -390,8 +392,9 @@
}
// Try to install it again.
- SetPageState(options, {.url_load_result =
- WebAppUrlLoaderResult::kRedirectedUrlLoaded});
+ SetPageState(options,
+ {.url_load_result =
+ webapps::WebAppUrlLoaderResult::kRedirectedUrlLoaded});
auto data_retriever = std::make_unique<FakeDataRetriever>();
data_retriever->BuildDefaultDataToRetrieve(kWebAppUrl, kWebAppScope);
@@ -417,8 +420,9 @@
// Install a placeholder app.
{
- SetPageState(options, {.url_load_result =
- WebAppUrlLoaderResult::kRedirectedUrlLoaded});
+ SetPageState(options,
+ {.url_load_result =
+ webapps::WebAppUrlLoaderResult::kRedirectedUrlLoaded});
auto result = InstallAndWait(options);
@@ -468,8 +472,9 @@
// Install a placeholder app.
{
- SetPageState(options, {.url_load_result =
- WebAppUrlLoaderResult::kRedirectedUrlLoaded});
+ SetPageState(options,
+ {.url_load_result =
+ webapps::WebAppUrlLoaderResult::kRedirectedUrlLoaded});
auto result = InstallAndWait(options);
@@ -538,8 +543,9 @@
// Install a placeholder app.
{
- SetPageState(options, {.url_load_result =
- WebAppUrlLoaderResult::kRedirectedUrlLoaded});
+ SetPageState(options,
+ {.url_load_result =
+ webapps::WebAppUrlLoaderResult::kRedirectedUrlLoaded});
auto result = InstallAndWait(options);
@@ -600,8 +606,9 @@
webapps::AppId expected_app_id =
GenerateAppId(/*manifest_id_path=*/std::nullopt, kWebAppUrl);
- SetPageState(options, {.url_load_result =
- WebAppUrlLoaderResult::kRedirectedUrlLoaded});
+ SetPageState(options,
+ {.url_load_result =
+ webapps::WebAppUrlLoaderResult::kRedirectedUrlLoaded});
auto result = InstallAndWait(options);
@@ -648,8 +655,9 @@
ExternalInstallSource::kExternalPolicy);
options.install_placeholder = true;
options.override_name = kCustomName;
- SetPageState(options, {.url_load_result =
- WebAppUrlLoaderResult::kRedirectedUrlLoaded});
+ SetPageState(options,
+ {.url_load_result =
+ webapps::WebAppUrlLoaderResult::kRedirectedUrlLoaded});
auto result = InstallAndWait(options);
@@ -696,13 +704,13 @@
TEST_F(ExternalAppResolutionCommandTest, InstallURLLoadFailed) {
const GURL kWebAppUrl("https://foo.example");
struct ResultPair {
- WebAppUrlLoader::Result loader_result;
+ webapps::WebAppUrlLoaderResult loader_result;
webapps::InstallResultCode install_result;
- } result_pairs[] = {{WebAppUrlLoader::Result::kRedirectedUrlLoaded,
+ } result_pairs[] = {{webapps::WebAppUrlLoaderResult::kRedirectedUrlLoaded,
webapps::InstallResultCode::kInstallURLRedirected},
- {WebAppUrlLoader::Result::kFailedUnknownReason,
+ {webapps::WebAppUrlLoaderResult::kFailedUnknownReason,
webapps::InstallResultCode::kInstallURLLoadFailed},
- {WebAppUrlLoader::Result::kFailedPageTookTooLong,
+ {webapps::WebAppUrlLoaderResult::kFailedPageTookTooLong,
webapps::InstallResultCode::kInstallURLLoadTimeOut}};
for (const auto& result_pair : result_pairs) {
diff --git a/chrome/browser/web_applications/commands/fetch_install_info_from_install_url_command.cc b/chrome/browser/web_applications/commands/fetch_install_info_from_install_url_command.cc
index 35475f9..a67a68e 100644
--- a/chrome/browser/web_applications/commands/fetch_install_info_from_install_url_command.cc
+++ b/chrome/browser/web_applications/commands/fetch_install_info_from_install_url_command.cc
@@ -16,9 +16,9 @@
#include "chrome/browser/web_applications/web_app_icon_operations.h"
#include "chrome/browser/web_applications/web_app_install_utils.h"
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/browser/web_applications/web_contents/web_contents_manager.h"
#include "chrome/common/chrome_features.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/browser/web_contents.h"
#include "url/origin.h"
@@ -113,19 +113,21 @@
return;
}
- url_loader_->LoadUrl(install_url_, &lock_->shared_web_contents(),
- WebAppUrlLoader::UrlComparison::kIgnoreQueryParamsAndRef,
- base::BindOnce(&FetchInstallInfoFromInstallUrlCommand::
- OnWebAppUrlLoadedGetWebAppInstallInfo,
- weak_ptr_factory_.GetWeakPtr()));
+ url_loader_->LoadUrl(
+ install_url_, &lock_->shared_web_contents(),
+ webapps::WebAppUrlLoader::UrlComparison::kIgnoreQueryParamsAndRef,
+ base::BindOnce(&FetchInstallInfoFromInstallUrlCommand::
+ OnWebAppUrlLoadedGetWebAppInstallInfo,
+ weak_ptr_factory_.GetWeakPtr()));
}
void FetchInstallInfoFromInstallUrlCommand::
- OnWebAppUrlLoadedGetWebAppInstallInfo(WebAppUrlLoader::Result result) {
+ OnWebAppUrlLoadedGetWebAppInstallInfo(
+ webapps::WebAppUrlLoaderResult result) {
GetMutableDebugValue().Set("url_loading_result",
ConvertUrlLoaderResultToString(result));
- if (result != WebAppUrlLoader::Result::kUrlLoaded) {
+ if (result != webapps::WebAppUrlLoaderResult::kUrlLoaded) {
install_error_log_entry_.LogUrlLoaderError(
"OnWebAppUrlLoadedGetWebAppInstallInfo", install_url_.spec(), result);
CompleteCommandAndSelfDestruct(FetchInstallInfoResult::kUrlLoadingFailure,
diff --git a/chrome/browser/web_applications/commands/fetch_install_info_from_install_url_command.h b/chrome/browser/web_applications/commands/fetch_install_info_from_install_url_command.h
index a188c88..42044f7 100644
--- a/chrome/browser/web_applications/commands/fetch_install_info_from_install_url_command.h
+++ b/chrome/browser/web_applications/commands/fetch_install_info_from_install_url_command.h
@@ -13,9 +13,12 @@
#include "chrome/browser/web_applications/web_app_logging.h"
#include "components/webapps/browser/installable/installable_logging.h"
+namespace webapps {
+class WebAppUrlLoader;
+}
+
namespace web_app {
-class WebAppUrlLoader;
class WebAppDataRetriever;
enum class FetchInstallInfoResult {
@@ -53,7 +56,8 @@
private:
bool IsWebContentsDestroyed();
- void OnWebAppUrlLoadedGetWebAppInstallInfo(WebAppUrlLoader::Result result);
+ void OnWebAppUrlLoadedGetWebAppInstallInfo(
+ webapps::WebAppUrlLoaderResult result);
void OnGetWebAppInstallInfo(std::unique_ptr<WebAppInstallInfo> install_info);
void OnManifestRetrieved(std::unique_ptr<WebAppInstallInfo> web_app_info,
blink::mojom::ManifestPtr opt_manifest,
@@ -74,7 +78,7 @@
GURL install_url_;
std::optional<webapps::ManifestId> parent_manifest_id_;
- std::unique_ptr<WebAppUrlLoader> url_loader_;
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader_;
std::unique_ptr<WebAppDataRetriever> data_retriever_;
InstallErrorLogEntry install_error_log_entry_;
diff --git a/chrome/browser/web_applications/commands/fetch_install_info_from_install_url_command_unittest.cc b/chrome/browser/web_applications/commands/fetch_install_info_from_install_url_command_unittest.cc
index 0588092..66a5b24 100644
--- a/chrome/browser/web_applications/commands/fetch_install_info_from_install_url_command_unittest.cc
+++ b/chrome/browser/web_applications/commands/fetch_install_info_from_install_url_command_unittest.cc
@@ -45,8 +45,8 @@
std::optional<webapps::ManifestId> parent_manifest_id,
bool disable_web_app_info = false,
bool valid_manifest = true,
- WebAppUrlLoader::Result url_load_result =
- WebAppUrlLoader::Result::kUrlLoaded) {
+ webapps::WebAppUrlLoaderResult url_load_result =
+ webapps::WebAppUrlLoaderResult::kUrlLoaded) {
auto& install_page_state =
web_contents_manager().GetOrCreatePageState(install_url);
install_page_state.url_load_result = url_load_result;
@@ -139,7 +139,7 @@
std::unique_ptr<WebAppInstallInfo> command_result = CreateAndRunCommand(
app_url(), manifest_id(), parent_manifest_id(),
/*disable_web_app_info=*/false, /*valid_manifest=*/true,
- WebAppUrlLoader::Result::kRedirectedUrlLoaded);
+ webapps::WebAppUrlLoaderResult::kRedirectedUrlLoaded);
EXPECT_FALSE(command_result);
EXPECT_EQ(GetCommandErrorFromLog(), "kUrlLoadingFailure");
}
diff --git a/chrome/browser/web_applications/commands/fetch_installability_for_chrome_management.cc b/chrome/browser/web_applications/commands/fetch_installability_for_chrome_management.cc
index 8cbd4a8..b0031dcb 100644
--- a/chrome/browser/web_applications/commands/fetch_installability_for_chrome_management.cc
+++ b/chrome/browser/web_applications/commands/fetch_installability_for_chrome_management.cc
@@ -18,8 +18,8 @@
#include "chrome/browser/web_applications/web_app_command_manager.h"
#include "chrome/browser/web_applications/web_app_helpers.h"
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "components/webapps/browser/installable/installable_logging.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "components/webapps/common/web_app_id.h"
#include "content/public/browser/web_contents.h"
#include "url/gurl.h"
@@ -29,7 +29,7 @@
FetchInstallabilityForChromeManagement::FetchInstallabilityForChromeManagement(
const GURL& url,
base::WeakPtr<content::WebContents> web_contents,
- std::unique_ptr<WebAppUrlLoader> url_loader,
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader,
std::unique_ptr<WebAppDataRetriever> data_retriever,
FetchInstallabilityForChromeManagementCallback callback)
: WebAppCommand<NoopLock,
@@ -67,15 +67,16 @@
return;
}
- url_loader_->LoadUrl(url_, web_contents_.get(),
- WebAppUrlLoader::UrlComparison::kIgnoreQueryParamsAndRef,
- base::BindOnce(&FetchInstallabilityForChromeManagement::
- OnUrlLoadedCheckInstallability,
- weak_factory_.GetWeakPtr()));
+ url_loader_->LoadUrl(
+ url_, web_contents_.get(),
+ webapps::WebAppUrlLoader::UrlComparison::kIgnoreQueryParamsAndRef,
+ base::BindOnce(&FetchInstallabilityForChromeManagement::
+ OnUrlLoadedCheckInstallability,
+ weak_factory_.GetWeakPtr()));
}
void FetchInstallabilityForChromeManagement::OnUrlLoadedCheckInstallability(
- WebAppUrlLoader::Result result) {
+ webapps::WebAppUrlLoaderResult result) {
if (IsWebContentsDestroyed()) {
GetMutableDebugValue().Set("web_contents_destroyed", true);
CompleteAndSelfDestruct(CommandResult::kSuccess,
@@ -86,21 +87,21 @@
GetMutableDebugValue().Set("WebAppUrlLoader::Result",
ConvertUrlLoaderResultToString(result));
- if (result == WebAppUrlLoader::Result::kRedirectedUrlLoaded) {
+ if (result == webapps::WebAppUrlLoaderResult::kRedirectedUrlLoaded) {
CompleteAndSelfDestruct(CommandResult::kSuccess,
InstallableCheckResult::kNotInstallable,
std::nullopt);
return;
}
- if (result == WebAppUrlLoader::Result::kFailedPageTookTooLong) {
+ if (result == webapps::WebAppUrlLoaderResult::kFailedPageTookTooLong) {
CompleteAndSelfDestruct(CommandResult::kSuccess,
InstallableCheckResult::kNotInstallable,
std::nullopt);
return;
}
- if (result != WebAppUrlLoader::Result::kUrlLoaded) {
+ if (result != webapps::WebAppUrlLoaderResult::kUrlLoaded) {
CompleteAndSelfDestruct(CommandResult::kFailure,
InstallableCheckResult::kNotInstallable,
std::nullopt);
diff --git a/chrome/browser/web_applications/commands/fetch_installability_for_chrome_management.h b/chrome/browser/web_applications/commands/fetch_installability_for_chrome_management.h
index 64e1a49..9c7f24404 100644
--- a/chrome/browser/web_applications/commands/fetch_installability_for_chrome_management.h
+++ b/chrome/browser/web_applications/commands/fetch_installability_for_chrome_management.h
@@ -22,13 +22,15 @@
class WebContents;
}
+namespace webapps {
+class WebAppUrlLoader;
+enum class WebAppUrlLoaderResult;
+} // namespace webapps
+
namespace web_app {
class AppLock;
class WebAppDataRetriever;
-class WebAppUrlLoader;
-enum class WebAppUrlLoaderResult;
-
enum class InstallableCheckResult {
kNotInstallable,
kInstallable,
@@ -49,7 +51,7 @@
FetchInstallabilityForChromeManagement(
const GURL& url,
base::WeakPtr<content::WebContents> web_contents,
- std::unique_ptr<WebAppUrlLoader> url_loader,
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader,
std::unique_ptr<WebAppDataRetriever> data_retriever,
FetchInstallabilityForChromeManagementCallback callback);
~FetchInstallabilityForChromeManagement() override;
@@ -58,7 +60,7 @@
void StartWithLock(std::unique_ptr<NoopLock>) override;
private:
- void OnUrlLoadedCheckInstallability(WebAppUrlLoaderResult result);
+ void OnUrlLoadedCheckInstallability(webapps::WebAppUrlLoaderResult result);
void OnWebAppInstallabilityChecked(blink::mojom::ManifestPtr opt_manifest,
const GURL& manifest_url,
bool valid_manifest_for_web_app,
@@ -74,7 +76,7 @@
webapps::AppId app_id_;
base::WeakPtr<content::WebContents> web_contents_;
- const std::unique_ptr<WebAppUrlLoader> url_loader_;
+ const std::unique_ptr<webapps::WebAppUrlLoader> url_loader_;
const std::unique_ptr<WebAppDataRetriever> data_retriever_;
base::WeakPtrFactory<FetchInstallabilityForChromeManagement> weak_factory_{
diff --git a/chrome/browser/web_applications/commands/fetch_installability_for_chrome_management_unittest.cc b/chrome/browser/web_applications/commands/fetch_installability_for_chrome_management_unittest.cc
index be67012..253045f 100644
--- a/chrome/browser/web_applications/commands/fetch_installability_for_chrome_management_unittest.cc
+++ b/chrome/browser/web_applications/commands/fetch_installability_for_chrome_management_unittest.cc
@@ -20,8 +20,8 @@
#include "chrome/browser/web_applications/web_app_install_info.h"
#include "chrome/browser/web_applications/web_app_provider.h"
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "components/webapps/browser/installable/installable_logging.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "components/webapps/common/web_app_id.h"
#include "content/public/browser/web_contents.h"
#include "testing/gmock/include/gmock/gmock.h"
@@ -70,7 +70,7 @@
FetchResult ScheduleCommandAndWait(
const GURL& url,
base::WeakPtr<content::WebContents> web_contents,
- std::unique_ptr<WebAppUrlLoader> url_loader,
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader,
std::unique_ptr<WebAppDataRetriever> data_retriever) {
base::RunLoop run_loop;
FetchResult output;
@@ -103,8 +103,8 @@
auto data_retriever = std::make_unique<FakeDataRetriever>();
// Url loading fails.
- url_loader->SetNextLoadUrlResult(kWebAppUrl,
- WebAppUrlLoaderResult::kFailedUnknownReason);
+ url_loader->SetNextLoadUrlResult(
+ kWebAppUrl, webapps::WebAppUrlLoaderResult::kFailedUnknownReason);
FetchResult result =
ScheduleCommandAndWait(kWebAppUrl, web_contents()->GetWeakPtr(),
std::move(url_loader), std::move(data_retriever));
@@ -119,7 +119,7 @@
// Url loading succeeds, but manifest fetch says not installable.
url_loader->SetNextLoadUrlResult(kWebAppUrl,
- WebAppUrlLoaderResult::kUrlLoaded);
+ webapps::WebAppUrlLoaderResult::kUrlLoaded);
data_retriever->SetManifest(blink::mojom::ManifestPtr(),
webapps::InstallableStatusCode::NO_MANIFEST);
@@ -136,7 +136,7 @@
auto data_retriever = std::make_unique<FakeDataRetriever>();
// Url loading succeeds and manifest loads. No apps installed yet, so succeed!
url_loader->SetNextLoadUrlResult(kWebAppUrl,
- WebAppUrlLoaderResult::kUrlLoaded);
+ webapps::WebAppUrlLoaderResult::kUrlLoaded);
data_retriever->SetManifest(
CreateManifest(), webapps::InstallableStatusCode::NO_ERROR_DETECTED);
@@ -153,7 +153,7 @@
auto data_retriever = std::make_unique<FakeDataRetriever>();
// Url loading succeeds and manifest loads. No apps installed yet, so succeed!
url_loader->SetNextLoadUrlResult(kWebAppUrl,
- WebAppUrlLoaderResult::kUrlLoaded);
+ webapps::WebAppUrlLoaderResult::kUrlLoaded);
data_retriever->SetManifest(
CreateManifest(), webapps::InstallableStatusCode::NO_ERROR_DETECTED);
diff --git a/chrome/browser/web_applications/commands/fetch_manifest_and_install_command_unittest.cc b/chrome/browser/web_applications/commands/fetch_manifest_and_install_command_unittest.cc
index 93a1600..449bf07c 100644
--- a/chrome/browser/web_applications/commands/fetch_manifest_and_install_command_unittest.cc
+++ b/chrome/browser/web_applications/commands/fetch_manifest_and_install_command_unittest.cc
@@ -34,11 +34,11 @@
#include "chrome/browser/web_applications/web_app_install_params.h"
#include "chrome/browser/web_applications/web_app_utils.h"
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/common/chrome_features.h"
#include "components/webapps/browser/install_result_code.h"
#include "components/webapps/browser/installable/installable_logging.h"
#include "components/webapps/browser/installable/installable_metrics.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "components/webapps/common/web_app_id.h"
#include "components/webapps/common/web_page_metadata.mojom.h"
#include "content/public/browser/web_contents.h"
diff --git a/chrome/browser/web_applications/commands/install_from_sync_command.cc b/chrome/browser/web_applications/commands/install_from_sync_command.cc
index c9273ea..79700c2 100644
--- a/chrome/browser/web_applications/commands/install_from_sync_command.cc
+++ b/chrome/browser/web_applications/commands/install_from_sync_command.cc
@@ -26,11 +26,11 @@
#include "chrome/browser/web_applications/web_app_sync_bridge.h"
#include "chrome/browser/web_applications/web_app_utils.h"
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/browser/web_applications/web_contents/web_contents_manager.h"
#include "components/webapps/browser/install_result_code.h"
#include "components/webapps/browser/installable/installable_logging.h"
#include "components/webapps/browser/installable/installable_metrics.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/browser/web_contents.h"
namespace web_app {
@@ -135,7 +135,7 @@
url_loader_->LoadUrl(
params_.start_url, &lock_->shared_web_contents(),
- WebAppUrlLoader::UrlComparison::kIgnoreQueryParamsAndRef,
+ webapps::WebAppUrlLoader::UrlComparison::kIgnoreQueryParamsAndRef,
base::BindOnce(
&InstallFromSyncCommand::OnWebAppUrlLoadedGetWebAppInstallInfo,
weak_ptr_factory_.GetWeakPtr()));
@@ -147,25 +147,25 @@
}
void InstallFromSyncCommand::OnWebAppUrlLoadedGetWebAppInstallInfo(
- WebAppUrlLoader::Result result) {
+ webapps::WebAppUrlLoaderResult result) {
GetMutableDebugValue().Set("WebAppUrlLoader::Result",
ConvertUrlLoaderResultToString(result));
- if (result != WebAppUrlLoader::Result::kUrlLoaded) {
+ if (result != webapps::WebAppUrlLoaderResult::kUrlLoaded) {
install_error_log_entry_.LogUrlLoaderError(
"OnWebAppUrlLoaded", params_.start_url.spec(), result);
}
- if (result == WebAppUrlLoader::Result::kRedirectedUrlLoaded) {
+ if (result == webapps::WebAppUrlLoaderResult::kRedirectedUrlLoaded) {
InstallFallback(webapps::InstallResultCode::kInstallURLRedirected);
return;
}
- if (result == WebAppUrlLoader::Result::kFailedPageTookTooLong) {
+ if (result == webapps::WebAppUrlLoaderResult::kFailedPageTookTooLong) {
InstallFallback(webapps::InstallResultCode::kInstallURLLoadTimeOut);
return;
}
- if (result != WebAppUrlLoader::Result::kUrlLoaded) {
+ if (result != webapps::WebAppUrlLoaderResult::kUrlLoaded) {
InstallFallback(webapps::InstallResultCode::kInstallURLLoadFailed);
return;
}
diff --git a/chrome/browser/web_applications/commands/install_from_sync_command.h b/chrome/browser/web_applications/commands/install_from_sync_command.h
index b037655..6105ad75 100644
--- a/chrome/browser/web_applications/commands/install_from_sync_command.h
+++ b/chrome/browser/web_applications/commands/install_from_sync_command.h
@@ -19,17 +19,20 @@
#include "chrome/browser/web_applications/web_app_constants.h"
#include "chrome/browser/web_applications/web_app_install_params.h"
#include "chrome/browser/web_applications/web_app_logging.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "components/webapps/browser/installable/installable_logging.h"
#include "third_party/skia/include/core/SkColor.h"
#include "url/gurl.h"
class Profile;
+namespace webapps {
+class WebAppUrlLoader;
+enum class WebAppUrlLoaderResult;
+} // namespace webapps
+
namespace web_app {
class WebAppDataRetriever;
-enum class WebAppUrlLoaderResult;
class InstallFromSyncCommand
: public WebAppCommand<SharedWebContentsWithAppLock,
@@ -74,7 +77,8 @@
std::unique_ptr<SharedWebContentsWithAppLock> lock) override;
private:
- void OnWebAppUrlLoadedGetWebAppInstallInfo(WebAppUrlLoaderResult result);
+ void OnWebAppUrlLoadedGetWebAppInstallInfo(
+ webapps::WebAppUrlLoaderResult result);
void OnGetWebAppInstallInfo(std::unique_ptr<WebAppInstallInfo> web_app_info);
@@ -105,7 +109,7 @@
const raw_ptr<Profile> profile_;
const Params params_;
- std::unique_ptr<WebAppUrlLoader> url_loader_;
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader_;
std::unique_ptr<WebAppDataRetriever> data_retriever_;
std::unique_ptr<WebAppInstallInfo> install_info_;
diff --git a/chrome/browser/web_applications/commands/install_from_sync_command_unittest.cc b/chrome/browser/web_applications/commands/install_from_sync_command_unittest.cc
index f97e2d6..d8370ad 100644
--- a/chrome/browser/web_applications/commands/install_from_sync_command_unittest.cc
+++ b/chrome/browser/web_applications/commands/install_from_sync_command_unittest.cc
@@ -192,7 +192,7 @@
// Page with manifest.
auto& fake_page_state =
web_contents_manager().GetOrCreatePageState(kWebAppStartUrl);
- fake_page_state.url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ fake_page_state.url_load_result = webapps::WebAppUrlLoaderResult::kUrlLoaded;
fake_page_state.opt_metadata =
FakeWebContentsManager::CreateMetadataWithIconAndTitle(
kDocumentTitle, kDocumentIconUrl, kIconSize);
@@ -228,7 +228,7 @@
// Page without manifest.
auto& fake_page_state =
web_contents_manager().GetOrCreatePageState(kWebAppStartUrl);
- fake_page_state.url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ fake_page_state.url_load_result = webapps::WebAppUrlLoaderResult::kUrlLoaded;
fake_page_state.opt_metadata =
FakeWebContentsManager::CreateMetadataWithIconAndTitle(
kDocumentTitle, kDocumentIconUrl, kIconSize);
@@ -262,7 +262,7 @@
// Page with manifest, no icons.
auto& fake_page_state =
web_contents_manager().GetOrCreatePageState(kWebAppStartUrl);
- fake_page_state.url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ fake_page_state.url_load_result = webapps::WebAppUrlLoaderResult::kUrlLoaded;
fake_page_state.opt_metadata =
FakeWebContentsManager::CreateMetadataWithIconAndTitle(
kDocumentTitle, kDocumentIconUrl, kIconSize);
@@ -298,7 +298,8 @@
// Page redirects.
auto& fake_page_state =
web_contents_manager().GetOrCreatePageState(kWebAppStartUrl);
- fake_page_state.url_load_result = WebAppUrlLoaderResult::kRedirectedUrlLoaded;
+ fake_page_state.url_load_result =
+ webapps::WebAppUrlLoaderResult::kRedirectedUrlLoaded;
// Fallback icon state.
web_contents_manager().GetOrCreateIconState(kFallbackIconUrl).bitmaps = {
@@ -332,7 +333,7 @@
// Page redirects.
auto& fake_page_state =
web_contents_manager().GetOrCreatePageState(kWebAppStartUrl);
- fake_page_state.url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ fake_page_state.url_load_result = webapps::WebAppUrlLoaderResult::kUrlLoaded;
fake_page_state.return_null_info = true;
// Fallback icon state.
@@ -367,7 +368,7 @@
// Page with manifest.
auto& fake_page_state =
web_contents_manager().GetOrCreatePageState(kWebAppStartUrl);
- fake_page_state.url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ fake_page_state.url_load_result = webapps::WebAppUrlLoaderResult::kUrlLoaded;
fake_page_state.opt_metadata =
FakeWebContentsManager::CreateMetadataWithIconAndTitle(
kDocumentTitle, kDocumentIconUrl, kIconSize);
@@ -506,7 +507,7 @@
// down.
auto& fake_page_state =
web_contents_manager().GetOrCreatePageState(kWebAppStartUrl);
- fake_page_state.url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ fake_page_state.url_load_result = webapps::WebAppUrlLoaderResult::kUrlLoaded;
fake_page_state.opt_metadata =
FakeWebContentsManager::CreateMetadataWithIconAndTitle(
kDocumentTitle, kDocumentIconUrl, kIconSize);
diff --git a/chrome/browser/web_applications/commands/install_preloaded_verified_app_command.cc b/chrome/browser/web_applications/commands/install_preloaded_verified_app_command.cc
index 836ec95..9c1b6a6d 100644
--- a/chrome/browser/web_applications/commands/install_preloaded_verified_app_command.cc
+++ b/chrome/browser/web_applications/commands/install_preloaded_verified_app_command.cc
@@ -25,10 +25,10 @@
#include "chrome/browser/web_applications/web_app_install_info.h"
#include "chrome/browser/web_applications/web_app_install_params.h"
#include "chrome/browser/web_applications/web_app_install_utils.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/browser/web_applications/web_contents/web_contents_manager.h"
#include "components/webapps/browser/install_result_code.h"
#include "components/webapps/browser/installable/installable_metrics.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "components/webapps/common/web_app_id.h"
#include "content/public/browser/web_contents.h"
#include "mojo/public/cpp/bindings/remote.h"
@@ -104,13 +104,13 @@
web_contents_lock_->web_contents_manager().CreateDataRetriever();
url_loader_->LoadUrl(
GURL(url::kAboutBlankURL), &web_contents_lock_->shared_web_contents(),
- WebAppUrlLoader::UrlComparison::kExact,
+ webapps::WebAppUrlLoader::UrlComparison::kExact,
base::BindOnce(&InstallPreloadedVerifiedAppCommand::OnAboutBlankLoaded,
weak_ptr_factory_.GetWeakPtr()));
}
void InstallPreloadedVerifiedAppCommand::OnAboutBlankLoaded(
- WebAppUrlLoaderResult result) {
+ webapps::WebAppUrlLoaderResult result) {
// The shared web contents must have been reset to about:blank before command
// execution.
DCHECK_EQ(web_contents_lock_->shared_web_contents().GetURL(),
diff --git a/chrome/browser/web_applications/commands/install_preloaded_verified_app_command.h b/chrome/browser/web_applications/commands/install_preloaded_verified_app_command.h
index 4f32abc..59d868c 100644
--- a/chrome/browser/web_applications/commands/install_preloaded_verified_app_command.h
+++ b/chrome/browser/web_applications/commands/install_preloaded_verified_app_command.h
@@ -23,11 +23,14 @@
#include "third_party/blink/public/mojom/manifest/manifest_manager.mojom.h"
#include "url/gurl.h"
+namespace webapps {
+class WebAppUrlLoader;
+enum class WebAppUrlLoaderResult;
+} // namespace webapps
+
namespace web_app {
class SharedWebContentsWithAppLock;
-class WebAppUrlLoader;
-enum class WebAppUrlLoaderResult;
// Installs a web app using a raw manifest JSON string, which is interpreted as
// if it was loaded from the renderer for a given URL. This does not attempt to
@@ -73,7 +76,7 @@
void StartWithLock(std::unique_ptr<SharedWebContentsLock> lock) override;
private:
- void OnAboutBlankLoaded(WebAppUrlLoaderResult result);
+ void OnAboutBlankLoaded(webapps::WebAppUrlLoaderResult result);
void OnManifestParsed(blink::mojom::ManifestPtr manifest);
void OnIconsRetrieved(IconsDownloadedResult result,
IconsMap icons_map,
@@ -97,7 +100,7 @@
// SharedWebContentsWithAppLock is held while installing the app.
std::unique_ptr<SharedWebContentsWithAppLock> app_lock_;
- std::unique_ptr<WebAppUrlLoader> url_loader_;
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader_;
std::unique_ptr<WebAppDataRetriever> data_retriever_;
std::unique_ptr<WebAppInstallInfo> web_app_info_;
diff --git a/chrome/browser/web_applications/commands/navigate_and_trigger_install_dialog_command.cc b/chrome/browser/web_applications/commands/navigate_and_trigger_install_dialog_command.cc
index 5ffb4ee6..74a3065 100644
--- a/chrome/browser/web_applications/commands/navigate_and_trigger_install_dialog_command.cc
+++ b/chrome/browser/web_applications/commands/navigate_and_trigger_install_dialog_command.cc
@@ -18,8 +18,8 @@
#include "chrome/browser/web_applications/web_app_helpers.h"
#include "chrome/browser/web_applications/web_app_ui_manager.h"
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "components/webapps/browser/installable/installable_logging.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/browser/web_contents.h"
#include "ui/base/page_transition_types.h"
#include "url/gurl.h"
@@ -33,7 +33,7 @@
bool is_renderer_initiated,
NavigateAndTriggerInstallDialogCommandCallback callback,
base::WeakPtr<WebAppUiManager> ui_manager,
- std::unique_ptr<WebAppUrlLoader> url_loader,
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader,
std::unique_ptr<WebAppDataRetriever> data_retriever,
Profile* profile)
: WebAppCommand<NoopLock, NavigateAndTriggerInstallDialogCommandResult>(
@@ -91,13 +91,13 @@
web_contents_ = new_tab->GetWeakPtr();
url_loader_->LoadUrl(
std::move(load_url_params), web_contents_.get(),
- WebAppUrlLoader::UrlComparison::kIgnoreQueryParamsAndRef,
+ webapps::WebAppUrlLoader::UrlComparison::kIgnoreQueryParamsAndRef,
base::BindOnce(&NavigateAndTriggerInstallDialogCommand::OnUrlLoaded,
weak_factory_.GetWeakPtr()));
}
void NavigateAndTriggerInstallDialogCommand::OnUrlLoaded(
- WebAppUrlLoader::Result result) {
+ webapps::WebAppUrlLoaderResult result) {
GetMutableDebugValue().Set("WebAppUrlLoader::Result",
ConvertUrlLoaderResultToString(result));
if (IsWebContentsDestroyed()) {
@@ -107,7 +107,7 @@
NavigateAndTriggerInstallDialogCommandResult::kFailure);
return;
}
- if (result != WebAppUrlLoader::Result::kUrlLoaded) {
+ if (result != webapps::WebAppUrlLoaderResult::kUrlLoaded) {
CompleteAndSelfDestruct(
CommandResult::kFailure,
NavigateAndTriggerInstallDialogCommandResult::kFailure);
diff --git a/chrome/browser/web_applications/commands/navigate_and_trigger_install_dialog_command.h b/chrome/browser/web_applications/commands/navigate_and_trigger_install_dialog_command.h
index dfbdd68..ca5a1a3 100644
--- a/chrome/browser/web_applications/commands/navigate_and_trigger_install_dialog_command.h
+++ b/chrome/browser/web_applications/commands/navigate_and_trigger_install_dialog_command.h
@@ -23,13 +23,16 @@
class WebContents;
}
+namespace webapps {
+class WebAppUrlLoader;
+enum class WebAppUrlLoaderResult;
+} // namespace webapps
+
namespace web_app {
class AppLock;
class WebAppDataRetriever;
-class WebAppUrlLoader;
class WebAppUiManager;
-enum class WebAppUrlLoaderResult;
enum class NavigateAndTriggerInstallDialogCommandResult {
kFailure,
@@ -37,6 +40,7 @@
kDialogShown,
kShutdown
};
+
// The navigation will always succeed. The `result` indicates whether the
// command was able to trigger the install dialog.
using NavigateAndTriggerInstallDialogCommandCallback = base::OnceCallback<void(
@@ -55,7 +59,7 @@
bool is_renderer_initiated,
NavigateAndTriggerInstallDialogCommandCallback callback,
base::WeakPtr<WebAppUiManager> ui_manager,
- std::unique_ptr<WebAppUrlLoader> url_loader,
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader,
std::unique_ptr<WebAppDataRetriever> data_retriever,
Profile* profile);
~NavigateAndTriggerInstallDialogCommand() override;
@@ -67,7 +71,7 @@
private:
bool IsWebContentsDestroyed();
- void OnUrlLoaded(WebAppUrlLoaderResult result);
+ void OnUrlLoaded(webapps::WebAppUrlLoaderResult result);
void OnInstallabilityChecked(blink::mojom::ManifestPtr opt_manifest,
const GURL& manifest_url,
bool valid_manifest_for_web_app,
@@ -82,7 +86,7 @@
const bool is_renderer_initiated_;
base::WeakPtr<WebAppUiManager> ui_manager_;
- const std::unique_ptr<WebAppUrlLoader> url_loader_;
+ const std::unique_ptr<webapps::WebAppUrlLoader> url_loader_;
const std::unique_ptr<WebAppDataRetriever> data_retriever_;
raw_ptr<Profile> profile_ = nullptr;
diff --git a/chrome/browser/web_applications/externally_managed_app_manager.cc b/chrome/browser/web_applications/externally_managed_app_manager.cc
index 2b01202..c64ef64 100644
--- a/chrome/browser/web_applications/externally_managed_app_manager.cc
+++ b/chrome/browser/web_applications/externally_managed_app_manager.cc
@@ -31,11 +31,11 @@
#include "chrome/browser/web_applications/web_app_registry_update.h"
#include "chrome/browser/web_applications/web_app_sync_bridge.h"
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/browser/web_applications/web_contents/web_contents_manager.h"
#include "chrome/common/chrome_features.h"
#include "components/webapps/browser/install_result_code.h"
#include "components/webapps/browser/uninstall_result_code.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/browser/web_contents.h"
#include "content/public/common/url_constants.h"
@@ -206,7 +206,7 @@
}
void ExternallyManagedAppManager::SetUrlLoaderForTesting(
- std::unique_ptr<WebAppUrlLoader> url_loader) {
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader) {
CHECK_IS_TEST();
url_loader_ = std::move(url_loader);
}
diff --git a/chrome/browser/web_applications/externally_managed_app_manager.h b/chrome/browser/web_applications/externally_managed_app_manager.h
index 7899a5a..aae1f144 100644
--- a/chrome/browser/web_applications/externally_managed_app_manager.h
+++ b/chrome/browser/web_applications/externally_managed_app_manager.h
@@ -27,6 +27,7 @@
namespace webapps {
enum class InstallResultCode;
+class WebAppUrlLoader;
}
namespace content {
@@ -39,7 +40,6 @@
class ExternallyManagedAppInstallTask;
class ExternallyManagedAppRegistrationTaskBase;
class WebAppDataRetriever;
-class WebAppUrlLoader;
class WebAppProvider;
enum class RegistrationResultCode { kSuccess, kAlreadyRegistered, kTimeout };
@@ -169,7 +169,8 @@
void Shutdown();
// TODO(http://b/283521737): Remove this and use WebContentsManager.
- void SetUrlLoaderForTesting(std::unique_ptr<WebAppUrlLoader> url_loader);
+ void SetUrlLoaderForTesting(
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader);
// TODO(http://b/283521737): Remove this and use WebContentsManager.
void SetDataRetrieverFactoryForTesting(
base::RepeatingCallback<std::unique_ptr<WebAppDataRetriever>()> factory);
@@ -261,7 +262,7 @@
synchronize_requests_;
// unique_ptr so that it can be replaced in tests.
- std::unique_ptr<WebAppUrlLoader> url_loader_;
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader_;
// Allows tests to set the data retriever for install tasks.
base::RepeatingCallback<std::unique_ptr<WebAppDataRetriever>()>
data_retriever_factory_;
diff --git a/chrome/browser/web_applications/externally_managed_app_manager_unittest.cc b/chrome/browser/web_applications/externally_managed_app_manager_unittest.cc
index f52700b6..29cf0e0 100644
--- a/chrome/browser/web_applications/externally_managed_app_manager_unittest.cc
+++ b/chrome/browser/web_applications/externally_managed_app_manager_unittest.cc
@@ -40,10 +40,10 @@
#include "chrome/browser/web_applications/web_app_registrar.h"
#include "chrome/browser/web_applications/web_app_registry_update.h"
#include "chrome/browser/web_applications/web_app_sync_bridge.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/common/chrome_features.h"
#include "components/services/app_service/public/cpp/app_types.h"
#include "components/webapps/browser/install_result_code.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "components/webapps/common/web_page_metadata.mojom.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -332,7 +332,8 @@
GURL start_url) {
auto& install_page_state =
web_contents_manager().GetOrCreatePageState(install_url);
- install_page_state.url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ install_page_state.url_load_result =
+ webapps::WebAppUrlLoaderResult::kUrlLoaded;
install_page_state.redirection_url = std::nullopt;
install_page_state.opt_metadata =
diff --git a/chrome/browser/web_applications/externally_managed_app_registration_task.cc b/chrome/browser/web_applications/externally_managed_app_registration_task.cc
index 26eb5d0..f35622f 100644
--- a/chrome/browser/web_applications/externally_managed_app_registration_task.cc
+++ b/chrome/browser/web_applications/externally_managed_app_registration_task.cc
@@ -7,7 +7,7 @@
#include "base/functional/callback_helpers.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/web_applications/externally_managed_app_manager.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/browser/browser_context.h"
#include "content/public/browser/service_worker_context.h"
#include "content/public/browser/storage_partition.h"
@@ -31,7 +31,7 @@
ExternallyManagedAppRegistrationTask::ExternallyManagedAppRegistrationTask(
GURL install_url,
const base::TimeDelta registration_timeout,
- WebAppUrlLoader* url_loader,
+ webapps::WebAppUrlLoader* url_loader,
content::WebContents* web_contents,
RegistrationCallback callback)
: ExternallyManagedAppRegistrationTaskBase(std::move(install_url),
@@ -108,7 +108,7 @@
}
url_loader_->LoadUrl(install_url(), web_contents_,
- WebAppUrlLoader::UrlComparison::kExact,
+ webapps::WebAppUrlLoader::UrlComparison::kExact,
base::DoNothing());
}
diff --git a/chrome/browser/web_applications/externally_managed_app_registration_task.h b/chrome/browser/web_applications/externally_managed_app_registration_task.h
index 2715f9b7..817e167 100644
--- a/chrome/browser/web_applications/externally_managed_app_registration_task.h
+++ b/chrome/browser/web_applications/externally_managed_app_registration_task.h
@@ -10,7 +10,6 @@
#include "base/memory/weak_ptr.h"
#include "base/observer_list_types.h"
#include "base/timer/timer.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "content/public/browser/service_worker_context_observer.h"
class GURL;
@@ -21,10 +20,13 @@
class WebContents;
} // namespace content
+namespace webapps {
+class WebAppUrlLoader;
+}
+
namespace web_app {
enum class RegistrationResultCode;
-class WebAppUrlLoader;
class ExternallyManagedAppRegistrationTaskBase
: public content::ServiceWorkerContextObserver {
@@ -56,7 +58,7 @@
ExternallyManagedAppRegistrationTask(
GURL install_url,
const base::TimeDelta registration_timeout,
- WebAppUrlLoader* url_loader,
+ webapps::WebAppUrlLoader* url_loader,
content::WebContents* web_contents,
RegistrationCallback callback);
@@ -80,7 +82,7 @@
void OnRegistrationTimeout();
- const raw_ptr<WebAppUrlLoader> url_loader_;
+ const raw_ptr<webapps::WebAppUrlLoader> url_loader_;
const raw_ptr<content::WebContents> web_contents_;
RegistrationCallback callback_;
raw_ptr<content::ServiceWorkerContext> service_worker_context_ = nullptr;
diff --git a/chrome/browser/web_applications/isolated_web_apps/install_isolated_web_app_command.cc b/chrome/browser/web_applications/isolated_web_apps/install_isolated_web_app_command.cc
index b085947..f7a331f 100644
--- a/chrome/browser/web_applications/isolated_web_apps/install_isolated_web_app_command.cc
+++ b/chrome/browser/web_applications/isolated_web_apps/install_isolated_web_app_command.cc
@@ -34,12 +34,12 @@
#include "chrome/browser/web_applications/web_app_install_info.h"
#include "chrome/browser/web_applications/web_app_install_utils.h"
#include "chrome/browser/web_applications/web_app_utils.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/browser/web_applications/web_contents/web_contents_manager.h"
#include "components/web_package/signed_web_bundles/signed_web_bundle_id.h"
#include "components/webapps/browser/install_result_code.h"
#include "components/webapps/browser/installable/installable_logging.h"
#include "components/webapps/browser/installable/installable_metrics.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "components/webapps/common/web_app_id.h"
#include "content/public/browser/browser_context.h"
#include "content/public/browser/web_contents.h"
diff --git a/chrome/browser/web_applications/isolated_web_apps/install_isolated_web_app_command.h b/chrome/browser/web_applications/isolated_web_apps/install_isolated_web_app_command.h
index 0ddabf0..65f5c84 100644
--- a/chrome/browser/web_applications/isolated_web_apps/install_isolated_web_app_command.h
+++ b/chrome/browser/web_applications/isolated_web_apps/install_isolated_web_app_command.h
@@ -39,11 +39,12 @@
class WebContents;
} // namespace content
-namespace web_app {
-
+namespace webapps {
class WebAppUrlLoader;
-
enum class WebAppUrlLoaderResult;
+} // namespace webapps
+
+namespace web_app {
struct InstallIsolatedWebAppCommandSuccess {
InstallIsolatedWebAppCommandSuccess(base::Version installed_version,
@@ -180,7 +181,7 @@
SEQUENCE_CHECKER(sequence_checker_);
std::unique_ptr<AppLock> lock_;
- std::unique_ptr<WebAppUrlLoader> url_loader_;
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader_;
const std::unique_ptr<IsolatedWebAppInstallCommandHelper> command_helper_;
diff --git a/chrome/browser/web_applications/isolated_web_apps/install_isolated_web_app_command_unittest.cc b/chrome/browser/web_applications/isolated_web_apps/install_isolated_web_app_command_unittest.cc
index 9cfd2cb..f08890e 100644
--- a/chrome/browser/web_applications/isolated_web_apps/install_isolated_web_app_command_unittest.cc
+++ b/chrome/browser/web_applications/isolated_web_apps/install_isolated_web_app_command_unittest.cc
@@ -58,13 +58,13 @@
#include "chrome/browser/web_applications/web_app_install_info.h"
#include "chrome/browser/web_applications/web_app_install_utils.h"
#include "chrome/browser/web_applications/web_app_registrar.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/common/chrome_features.h"
#include "components/web_package/signed_web_bundles/ed25519_public_key.h"
#include "components/web_package/signed_web_bundles/signed_web_bundle_id.h"
#include "components/web_package/web_bundle_builder.h"
#include "components/webapps/browser/installable/installable_logging.h"
#include "components/webapps/browser/installable/installable_metrics.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/browser/web_contents.h"
#include "content/public/common/content_features.h"
#include "net/http/http_status_code.h"
@@ -184,7 +184,7 @@
GURL application_url = url_info.origin().GetURL();
auto& page_state = web_contents_manager().GetOrCreatePageState(
application_url.Resolve(kManifestPath));
- page_state.url_load_result = WebAppUrlLoader::Result::kUrlLoaded;
+ page_state.url_load_result = webapps::WebAppUrlLoaderResult::kUrlLoaded;
page_state.error_code = webapps::InstallableStatusCode::NO_ERROR_DETECTED;
page_state.manifest_url = CreateDefaultManifestURL(application_url);
@@ -227,7 +227,8 @@
TEST_F(InstallIsolatedWebAppCommandTest, PropagateErrorWhenURLLoaderFails) {
IsolatedWebAppUrlInfo url_info = CreateRandomIsolatedWebAppUrlInfo();
auto [page_state, icon_state] = SetUpPageAndIconStates(url_info);
- page_state.url_load_result = WebAppUrlLoader::Result::kFailedErrorPageLoaded;
+ page_state.url_load_result =
+ webapps::WebAppUrlLoaderResult::kFailedErrorPageLoaded;
EXPECT_THAT(ExecuteCommand(Parameters{.url_info = url_info}),
ErrorIs(Field(&InstallIsolatedWebAppCommandError::message,
@@ -239,7 +240,7 @@
IsolatedWebAppUrlInfo url_info = CreateRandomIsolatedWebAppUrlInfo();
auto [page_state, icon_state] = SetUpPageAndIconStates(url_info);
page_state.url_load_result =
- WebAppUrlLoader::Result::kFailedWebContentsDestroyed;
+ webapps::WebAppUrlLoaderResult::kFailedWebContentsDestroyed;
EXPECT_THAT(
ExecuteCommand(Parameters{.url_info = url_info}),
@@ -437,7 +438,7 @@
web_contents_manager().TrackLoadUrlCalls(base::BindLambdaForTesting(
[&](content::NavigationController::LoadURLParams& load_url_params,
content::WebContents* unused_web_contents,
- WebAppUrlLoader::UrlComparison unused_url_comparison) {
+ webapps::WebAppUrlLoader::UrlComparison unused_url_comparison) {
EXPECT_THAT(load_url_params.url,
Eq(url_info.origin().GetURL().Resolve(kManifestPath)));
storage_partition_during_url_loading = profile()->GetStoragePartition(
@@ -603,7 +604,8 @@
TEST_F(InstallIsolatedWebAppCommandMetricsTest, ReportErrorWhenUrlLoaderFails) {
IsolatedWebAppUrlInfo url_info = CreateRandomIsolatedWebAppUrlInfo();
auto [page_state, icon_state] = SetUpPageAndIconStates(url_info);
- page_state.url_load_result = WebAppUrlLoader::Result::kFailedErrorPageLoaded;
+ page_state.url_load_result =
+ webapps::WebAppUrlLoaderResult::kFailedErrorPageLoaded;
base::HistogramTester histogram_tester;
diff --git a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_apply_update_command.cc b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_apply_update_command.cc
index 2966c31..0e8c17e 100644
--- a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_apply_update_command.cc
+++ b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_apply_update_command.cc
@@ -37,9 +37,9 @@
#include "chrome/browser/web_applications/web_app_registry_update.h"
#include "chrome/browser/web_applications/web_app_sync_bridge.h"
#include "chrome/browser/web_applications/web_app_utils.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/browser/web_applications/web_contents/web_contents_manager.h"
#include "components/webapps/browser/install_result_code.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "components/webapps/common/web_app_id.h"
#include "content/public/browser/browser_context.h"
#include "content/public/browser/web_contents.h"
diff --git a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_apply_update_command.h b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_apply_update_command.h
index db7116ed..a66e49d 100644
--- a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_apply_update_command.h
+++ b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_apply_update_command.h
@@ -34,15 +34,13 @@
}
namespace webapps {
+class WebAppUrlLoader;
+enum class WebAppUrlLoaderResult;
enum class InstallResultCode;
}
namespace web_app {
-class WebAppUrlLoader;
-
-enum class WebAppUrlLoaderResult;
-
struct IsolatedWebAppApplyUpdateCommandError {
std::string message;
};
@@ -149,7 +147,7 @@
const IsolatedWebAppUrlInfo url_info_;
std::unique_ptr<content::WebContents> web_contents_;
- std::unique_ptr<WebAppUrlLoader> url_loader_;
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader_;
const std::unique_ptr<ScopedKeepAlive> optional_keep_alive_;
const std::unique_ptr<ScopedProfileKeepAlive> optional_profile_keep_alive_;
diff --git a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_apply_update_command_unittest.cc b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_apply_update_command_unittest.cc
index b618a5c..dc5eb2d 100644
--- a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_apply_update_command_unittest.cc
+++ b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_apply_update_command_unittest.cc
@@ -33,10 +33,10 @@
#include "chrome/browser/web_applications/web_app_install_finalizer.h"
#include "chrome/browser/web_applications/web_app_provider.h"
#include "chrome/browser/web_applications/web_app_registry_update.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/common/url_constants.h"
#include "components/web_package/signed_web_bundles/signed_web_bundle_id.h"
#include "components/webapps/browser/install_result_code.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/browser/web_contents.h"
#include "services/data_decoder/public/cpp/test_support/in_process_data_decoder.h"
#include "testing/gmock/include/gmock/gmock.h"
@@ -157,7 +157,7 @@
"/.well-known/_generated_install_page.html"}));
auto& page_state = fake_web_contents_manager().GetOrCreatePageState(url);
- page_state.url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ page_state.url_load_result = webapps::WebAppUrlLoaderResult::kUrlLoaded;
page_state.error_code = webapps::InstallableStatusCode::NO_ERROR_DETECTED;
page_state.manifest_url =
url_info_.origin().GetURL().Resolve("manifest.webmanifest");
@@ -331,7 +331,8 @@
InstallIwa(update_info());
ASSERT_NO_FATAL_FAILURE(WriteUpdateBundleToDisk());
auto& page_state = CreateDefaultPageState();
- page_state.url_load_result = WebAppUrlLoader::Result::kFailedErrorPageLoaded;
+ page_state.url_load_result =
+ webapps::WebAppUrlLoaderResult::kFailedErrorPageLoaded;
auto result = ApplyPendingUpdate();
ASSERT_THAT(result.has_value(), IsFalse());
diff --git a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_install_command_helper.cc b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_install_command_helper.cc
index ca859dd..fda3525 100644
--- a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_install_command_helper.cc
+++ b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_install_command_helper.cc
@@ -39,10 +39,10 @@
#include "chrome/browser/web_applications/web_app_install_utils.h"
#include "chrome/browser/web_applications/web_app_utils.h"
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "components/base32/base32.h"
#include "components/webapps/browser/installable/installable_logging.h"
#include "components/webapps/browser/installable/installable_manager.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/browser/browser_context.h"
#include "content/public/browser/reload_type.h"
#include "content/public/browser/storage_partition_config.h"
@@ -132,8 +132,8 @@
}
}
-bool IsUrlLoadingResultSuccess(WebAppUrlLoader::Result result) {
- return result == WebAppUrlLoader::Result::kUrlLoaded;
+bool IsUrlLoadingResultSuccess(webapps::WebAppUrlLoaderResult result) {
+ return result == webapps::WebAppUrlLoaderResult::kUrlLoaded;
}
} // namespace
@@ -340,7 +340,7 @@
void IsolatedWebAppInstallCommandHelper::LoadInstallUrl(
const IwaSourceWithMode& source,
content::WebContents& web_contents,
- WebAppUrlLoader& url_loader,
+ webapps::WebAppUrlLoader& url_loader,
base::OnceCallback<void(base::expected<void, std::string>)> callback) {
// |web_app::IsolatedWebAppURLLoaderFactory| uses the isolation data in
// order to determine the current state of content serving (installation
@@ -366,14 +366,14 @@
url_loader.LoadUrl(
std::move(load_params), &web_contents,
- WebAppUrlLoader::UrlComparison::kIgnoreQueryParamsAndRef,
+ webapps::WebAppUrlLoader::UrlComparison::kIgnoreQueryParamsAndRef,
base::BindOnce(&IsolatedWebAppInstallCommandHelper::OnLoadInstallUrl,
weak_factory_.GetWeakPtr(), std::move(callback)));
}
void IsolatedWebAppInstallCommandHelper::OnLoadInstallUrl(
base::OnceCallback<void(base::expected<void, std::string>)> callback,
- WebAppUrlLoaderResult result) {
+ webapps::WebAppUrlLoaderResult result) {
if (!IsUrlLoadingResultSuccess(result)) {
std::move(callback).Run(base::unexpected(
base::StrCat({"Error during URL loading: ",
diff --git a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_install_command_helper.h b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_install_command_helper.h
index a18f67d..e5a8c994 100644
--- a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_install_command_helper.h
+++ b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_install_command_helper.h
@@ -28,6 +28,11 @@
class WebContents;
} // namespace content
+namespace webapps {
+class WebAppUrlLoader;
+enum class WebAppUrlLoaderResult;
+} // namespace webapps
+
namespace web_app {
enum class IconsDownloadedResult;
@@ -38,9 +43,6 @@
class IwaSourceWithModeAndFileOp;
class UnusableSwbnFileError;
class WebAppDataRetriever;
-class WebAppUrlLoader;
-enum class WebAppUrlLoaderResult;
-
// Copies the file being installed to the profile directory.
// On success returns a new owned location in the callback.
void UpdateBundlePathAndCreateStorageLocation(
@@ -87,7 +89,7 @@
void LoadInstallUrl(
const IwaSourceWithMode& source,
content::WebContents& web_contents,
- WebAppUrlLoader& url_loader,
+ webapps::WebAppUrlLoader& url_loader,
base::OnceCallback<void(base::expected<void, std::string>)> callback);
struct ManifestAndUrl {
@@ -133,7 +135,7 @@
void OnLoadInstallUrl(
base::OnceCallback<void(base::expected<void, std::string>)> callback,
- WebAppUrlLoaderResult result);
+ webapps::WebAppUrlLoaderResult result);
void OnCheckInstallabilityAndRetrieveManifest(
base::OnceCallback<void(base::expected<ManifestAndUrl, std::string>)>
diff --git a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_install_command_helper_unittest.cc b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_install_command_helper_unittest.cc
index 80564f9..56e3241 100644
--- a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_install_command_helper_unittest.cc
+++ b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_install_command_helper_unittest.cc
@@ -43,11 +43,11 @@
#include "chrome/browser/web_applications/web_app_install_info.h"
#include "chrome/browser/web_applications/web_app_install_utils.h"
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/common/chrome_features.h"
#include "chrome/test/base/testing_profile.h"
#include "components/web_package/signed_web_bundles/ed25519_public_key.h"
#include "components/web_package/signed_web_bundles/signed_web_bundle_id.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/browser/web_contents.h"
#include "content/public/common/content_features.h"
#include "content/public/test/browser_task_environment.h"
@@ -341,13 +341,13 @@
url_loader->SetNextLoadUrlResult(
url_info.origin().GetURL().Resolve(
".well-known/_generated_install_page.html"),
- WebAppUrlLoader::Result::kUrlLoaded);
+ webapps::WebAppUrlLoaderResult::kUrlLoaded);
- std::optional<WebAppUrlLoader::UrlComparison> last_url_comparison =
+ std::optional<webapps::WebAppUrlLoader::UrlComparison> last_url_comparison =
std::nullopt;
url_loader->TrackLoadUrlCalls(base::BindLambdaForTesting(
[&](const GURL& unused_url, content::WebContents* unused_web_contents,
- WebAppUrlLoader::UrlComparison url_comparison) {
+ webapps::WebAppUrlLoader::UrlComparison url_comparison) {
last_url_comparison = url_comparison;
}));
@@ -355,8 +355,9 @@
command_helper->LoadInstallUrl(CreateDevProxySource(), web_contents(),
*url_loader, future.GetCallback());
EXPECT_THAT(future.Get(), HasValue());
- EXPECT_THAT(last_url_comparison,
- Eq(WebAppUrlLoader::UrlComparison::kIgnoreQueryParamsAndRef));
+ EXPECT_THAT(
+ last_url_comparison,
+ Eq(webapps::WebAppUrlLoader::UrlComparison::kIgnoreQueryParamsAndRef));
}
TEST_F(IsolatedWebAppInstallCommandHelperLoadUrlTest,
@@ -370,12 +371,12 @@
url_loader->SetNextLoadUrlResult(
url_info.origin().GetURL().Resolve(
".well-known/_generated_install_page.html"),
- WebAppUrlLoader::Result::kUrlLoaded);
+ webapps::WebAppUrlLoaderResult::kUrlLoaded);
std::optional<IwaSourceWithMode> source = std::nullopt;
url_loader->TrackLoadUrlCalls(base::BindLambdaForTesting(
[&](const GURL& unused_url, content::WebContents* web_contents,
- WebAppUrlLoader::UrlComparison unused_url_comparison) {
+ webapps::WebAppUrlLoader::UrlComparison unused_url_comparison) {
source =
IsolatedWebAppPendingInstallInfo::FromWebContents(*web_contents)
.source();
@@ -402,12 +403,12 @@
url_loader->SetNextLoadUrlResult(
url_info.origin().GetURL().Resolve(
".well-known/_generated_install_page.html"),
- WebAppUrlLoader::Result::kUrlLoaded);
+ webapps::WebAppUrlLoaderResult::kUrlLoaded);
std::optional<IwaSourceWithMode> source = std::nullopt;
url_loader->TrackLoadUrlCalls(base::BindLambdaForTesting(
[&](const GURL& unused_url, content::WebContents* web_contents,
- WebAppUrlLoader::UrlComparison unused_url_comparison) {
+ webapps::WebAppUrlLoader::UrlComparison unused_url_comparison) {
source =
IsolatedWebAppPendingInstallInfo::FromWebContents(*web_contents)
.source();
@@ -433,7 +434,7 @@
url_loader->SetNextLoadUrlResult(
url_info.origin().GetURL().Resolve(
".well-known/_generated_install_page.html"),
- WebAppUrlLoader::Result::kFailedErrorPageLoaded);
+ webapps::WebAppUrlLoaderResult::kFailedErrorPageLoaded);
base::test::TestFuture<base::expected<void, std::string>> future;
command_helper->LoadInstallUrl(CreateDevProxySource(), web_contents(),
diff --git a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_prepare_and_store_update_command.cc b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_prepare_and_store_update_command.cc
index 45a0185..963be580 100644
--- a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_prepare_and_store_update_command.cc
+++ b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_prepare_and_store_update_command.cc
@@ -37,8 +37,8 @@
#include "chrome/browser/web_applications/web_app_registry_update.h"
#include "chrome/browser/web_applications/web_app_sync_bridge.h"
#include "chrome/browser/web_applications/web_app_utils.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/browser/web_applications/web_contents/web_contents_manager.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/browser/browser_context.h"
#include "content/public/browser/web_contents.h"
#include "third_party/abseil-cpp/absl/types/variant.h"
diff --git a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_prepare_and_store_update_command.h b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_prepare_and_store_update_command.h
index 68c1ad9..a60ec3a 100644
--- a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_prepare_and_store_update_command.h
+++ b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_prepare_and_store_update_command.h
@@ -37,11 +37,12 @@
class WebContents;
} // namespace content
-namespace web_app {
-
+namespace webapps {
class WebAppUrlLoader;
-
enum class WebAppUrlLoaderResult;
+} // namespace webapps
+
+namespace web_app {
struct IsolatedWebAppUpdatePrepareAndStoreCommandSuccess {
IsolatedWebAppUpdatePrepareAndStoreCommandSuccess(
@@ -192,7 +193,7 @@
SEQUENCE_CHECKER(sequence_checker_);
std::unique_ptr<AppLock> lock_;
- std::unique_ptr<WebAppUrlLoader> url_loader_;
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader_;
const std::unique_ptr<IsolatedWebAppInstallCommandHelper> command_helper_;
diff --git a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_prepare_and_store_update_command_unittest.cc b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_prepare_and_store_update_command_unittest.cc
index 9403630..ca216a1 100644
--- a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_prepare_and_store_update_command_unittest.cc
+++ b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_prepare_and_store_update_command_unittest.cc
@@ -31,10 +31,10 @@
#include "chrome/browser/web_applications/web_app_command_manager.h"
#include "chrome/browser/web_applications/web_app_provider.h"
#include "chrome/browser/web_applications/web_app_registry_update.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/common/url_constants.h"
#include "components/web_package/signed_web_bundles/signed_web_bundle_id.h"
#include "components/webapps/browser/install_result_code.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/browser/web_contents.h"
#include "services/data_decoder/public/cpp/test_support/in_process_data_decoder.h"
#include "testing/gmock/include/gmock/gmock.h"
@@ -152,7 +152,7 @@
"/.well-known/_generated_install_page.html"}));
auto& page_state = fake_web_contents_manager().GetOrCreatePageState(url);
- page_state.url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ page_state.url_load_result = webapps::WebAppUrlLoaderResult::kUrlLoaded;
page_state.error_code = webapps::InstallableStatusCode::NO_ERROR_DETECTED;
page_state.manifest_url =
url_info_.origin().GetURL().Resolve("manifest.webmanifest");
@@ -406,7 +406,8 @@
const base::flat_set<base::FilePath> existing_dirs = GetIwaDirContent();
WriteUpdateBundleToDisk();
auto& page_state = CreateDefaultPageState();
- page_state.url_load_result = WebAppUrlLoader::Result::kFailedErrorPageLoaded;
+ page_state.url_load_result =
+ webapps::WebAppUrlLoaderResult::kFailedErrorPageLoaded;
auto result = PrepareAndStoreUpdateInfo(update_version_);
EXPECT_THAT(result, IsErrorWithMessage(HasSubstr("FailedErrorPageLoaded")));
diff --git a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_update_discovery_task_unittest.cc b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_update_discovery_task_unittest.cc
index 5d752c1..dc01f44 100644
--- a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_update_discovery_task_unittest.cc
+++ b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_update_discovery_task_unittest.cc
@@ -28,12 +28,12 @@
#include "chrome/browser/web_applications/test/web_app_test.h"
#include "chrome/browser/web_applications/web_app_command_scheduler.h"
#include "chrome/browser/web_applications/web_app_provider.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/browser/web_applications/web_contents/web_contents_manager.h"
#include "chrome/common/chrome_features.h"
#include "chrome/common/pref_names.h"
#include "chrome/common/url_constants.h"
#include "components/webapps/browser/installable/installable_logging.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/common/content_features.h"
#include "net/http/http_status_code.h"
#include "services/data_decoder/public/cpp/test_support/in_process_data_decoder.h"
@@ -313,7 +313,7 @@
auto& page_state =
fake_web_contents_manager().GetOrCreatePageState(install_url_);
- page_state.url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ page_state.url_load_result = webapps::WebAppUrlLoaderResult::kUrlLoaded;
page_state.error_code = webapps::InstallableStatusCode::NO_ERROR_DETECTED;
page_state.manifest_url =
url_info_.origin().GetURL().Resolve("manifest.webmanifest");
diff --git a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_update_manager_unittest.cc b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_update_manager_unittest.cc
index ecb0660..fca8b04 100644
--- a/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_update_manager_unittest.cc
+++ b/chrome/browser/web_applications/isolated_web_apps/isolated_web_app_update_manager_unittest.cc
@@ -244,7 +244,7 @@
"/.well-known/_generated_install_page.html");
auto& page_state =
fake_web_contents_manager().GetOrCreatePageState(install_url);
- page_state.url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ page_state.url_load_result = webapps::WebAppUrlLoaderResult::kUrlLoaded;
page_state.error_code = webapps::InstallableStatusCode::NO_ERROR_DETECTED;
page_state.manifest_url =
url_info.origin().GetURL().Resolve("manifest.webmanifest");
@@ -399,7 +399,7 @@
auto& page_state =
fake_web_contents_manager().GetOrCreatePageState(install_url);
- page_state.url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ page_state.url_load_result = webapps::WebAppUrlLoaderResult::kUrlLoaded;
page_state.error_code = webapps::InstallableStatusCode::NO_ERROR_DETECTED;
page_state.manifest_url =
iwa_info.url_info.origin().GetURL().Resolve("manifest.webmanifest");
diff --git a/chrome/browser/web_applications/isolated_web_apps/signed_web_bundle_metadata.cc b/chrome/browser/web_applications/isolated_web_apps/signed_web_bundle_metadata.cc
index 67a7c75..adb7bf0 100644
--- a/chrome/browser/web_applications/isolated_web_apps/signed_web_bundle_metadata.cc
+++ b/chrome/browser/web_applications/isolated_web_apps/signed_web_bundle_metadata.cc
@@ -20,8 +20,8 @@
#include "chrome/browser/web_applications/web_app_install_info.h"
#include "chrome/browser/web_applications/web_app_provider.h"
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/browser/web_applications/web_contents/web_contents_manager.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/browser/web_contents.h"
namespace web_app {
@@ -173,7 +173,7 @@
std::unique_ptr<content::WebContents> web_contents_;
- std::unique_ptr<WebAppUrlLoader> url_loader_;
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader_;
base::WeakPtrFactory<WebAppInstallInfoFetcher> weak_factory_{this};
};
diff --git a/chrome/browser/web_applications/isolated_web_apps/signed_web_bundle_metadata_unittest.cc b/chrome/browser/web_applications/isolated_web_apps/signed_web_bundle_metadata_unittest.cc
index 3af65e25..130517f 100644
--- a/chrome/browser/web_applications/isolated_web_apps/signed_web_bundle_metadata_unittest.cc
+++ b/chrome/browser/web_applications/isolated_web_apps/signed_web_bundle_metadata_unittest.cc
@@ -20,10 +20,10 @@
#include "chrome/browser/web_applications/test/web_app_icon_test_utils.h"
#include "chrome/browser/web_applications/test/web_app_install_test_utils.h"
#include "chrome/browser/web_applications/test/web_app_test.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/common/url_constants.h"
#include "components/web_package/test_support/signed_web_bundles/web_bundle_signer.h"
#include "components/webapps/browser/installable/installable_logging.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "services/data_decoder/public/cpp/test_support/in_process_data_decoder.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -96,7 +96,7 @@
"/.well-known/_generated_install_page.html"}));
auto& page_state = fake_web_contents_manager.GetOrCreatePageState(url);
- page_state.url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ page_state.url_load_result = webapps::WebAppUrlLoaderResult::kUrlLoaded;
page_state.error_code = webapps::InstallableStatusCode::NO_ERROR_DETECTED;
page_state.manifest_url =
url_info.origin().GetURL().Resolve("manifest.webmanifest");
diff --git a/chrome/browser/web_applications/isolated_web_apps/test/isolated_web_app_builder.cc b/chrome/browser/web_applications/isolated_web_apps/test/isolated_web_app_builder.cc
index 2bfc2f0a..1bafbd5 100644
--- a/chrome/browser/web_applications/isolated_web_apps/test/isolated_web_app_builder.cc
+++ b/chrome/browser/web_applications/isolated_web_apps/test/isolated_web_app_builder.cc
@@ -95,7 +95,8 @@
GURL install_url = base_url.Resolve(kInstallPagePath);
FakeWebContentsManager::FakePageState& install_page_state =
fake_web_contents_manager.GetOrCreatePageState(install_url);
- install_page_state.url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ install_page_state.url_load_result =
+ webapps::WebAppUrlLoaderResult::kUrlLoaded;
install_page_state.error_code =
webapps::InstallableStatusCode::NO_ERROR_DETECTED;
install_page_state.manifest_url = base_url.Resolve(kManifestPath);
diff --git a/chrome/browser/web_applications/isolated_web_apps/test/iwa_test_server_configurator.cc b/chrome/browser/web_applications/isolated_web_apps/test/iwa_test_server_configurator.cc
index 6e81052..4fe7fe6 100644
--- a/chrome/browser/web_applications/isolated_web_apps/test/iwa_test_server_configurator.cc
+++ b/chrome/browser/web_applications/isolated_web_apps/test/iwa_test_server_configurator.cc
@@ -36,7 +36,7 @@
auto& page_state =
fake_web_contents_manager.GetOrCreatePageState(install_url);
- page_state.url_load_result = web_app::WebAppUrlLoaderResult::kUrlLoaded;
+ page_state.url_load_result = webapps::WebAppUrlLoaderResult::kUrlLoaded;
page_state.error_code = webapps::InstallableStatusCode::NO_ERROR_DETECTED;
page_state.manifest_url = origin_url.Resolve("manifest.webmanifest");
page_state.valid_manifest_for_web_app = true;
diff --git a/chrome/browser/web_applications/jobs/install_placeholder_job.cc b/chrome/browser/web_applications/jobs/install_placeholder_job.cc
index c2185af..fa35519 100644
--- a/chrome/browser/web_applications/jobs/install_placeholder_job.cc
+++ b/chrome/browser/web_applications/jobs/install_placeholder_job.cc
@@ -19,9 +19,9 @@
#include "chrome/browser/web_applications/web_app_install_utils.h"
#include "chrome/browser/web_applications/web_app_provider.h"
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/browser/web_applications/web_contents/web_contents_manager.h"
#include "components/webapps/browser/install_result_code.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/browser/web_contents.h"
#include "ui/gfx/geometry/size.h"
@@ -66,7 +66,7 @@
void InstallPlaceholderJob::Start() {
url_loader_ = lock_->web_contents_manager().CreateUrlLoader();
url_loader_->LoadUrl(install_options_.install_url, web_contents_,
- WebAppUrlLoader::UrlComparison::kSameOrigin,
+ webapps::WebAppUrlLoader::UrlComparison::kSameOrigin,
base::BindOnce(&InstallPlaceholderJob::OnUrlLoaded,
weak_factory_.GetWeakPtr()));
}
@@ -86,7 +86,7 @@
}
void InstallPlaceholderJob::OnUrlLoaded(
- WebAppUrlLoader::Result load_url_result) {
+ webapps::WebAppUrlLoaderResult load_url_result) {
CHECK(web_contents_ && !web_contents_->IsBeingDestroyed());
if (install_options_.override_icon_url) {
diff --git a/chrome/browser/web_applications/jobs/install_placeholder_job.h b/chrome/browser/web_applications/jobs/install_placeholder_job.h
index c6ae77ad..f5b82b8 100644
--- a/chrome/browser/web_applications/jobs/install_placeholder_job.h
+++ b/chrome/browser/web_applications/jobs/install_placeholder_job.h
@@ -13,7 +13,6 @@
#include "chrome/browser/web_applications/external_install_options.h"
#include "chrome/browser/web_applications/externally_managed_app_manager.h"
#include "chrome/browser/web_applications/web_app_install_utils.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
class Profile;
@@ -21,6 +20,11 @@
class WebContents;
}
+namespace webapps {
+class WebAppUrlLoader;
+enum class WebAppUrlLoaderResult;
+} // namespace webapps
+
namespace web_app {
class SharedWebContentsWithAppLock;
@@ -50,7 +54,7 @@
void Abort(webapps::InstallResultCode code);
void FetchCustomIcon(const GURL& url, int retries_left);
- void OnUrlLoaded(WebAppUrlLoader::Result load_url_result);
+ void OnUrlLoaded(webapps::WebAppUrlLoaderResult load_url_result);
void OnCustomIconFetched(const GURL& image_url,
int retries_left,
IconsDownloadedResult result,
@@ -76,7 +80,7 @@
InstallAndReplaceCallback callback_;
raw_ptr<content::WebContents> web_contents_;
- std::unique_ptr<WebAppUrlLoader> url_loader_;
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader_;
std::unique_ptr<WebAppDataRetriever> data_retriever_;
base::WeakPtrFactory<InstallPlaceholderJob> weak_factory_{this};
diff --git a/chrome/browser/web_applications/jobs/install_placeholder_job_unittest.cc b/chrome/browser/web_applications/jobs/install_placeholder_job_unittest.cc
index 725e811..d93f46f 100644
--- a/chrome/browser/web_applications/jobs/install_placeholder_job_unittest.cc
+++ b/chrome/browser/web_applications/jobs/install_placeholder_job_unittest.cc
@@ -29,8 +29,8 @@
#include "chrome/browser/web_applications/web_app_helpers.h"
#include "chrome/browser/web_applications/web_app_provider.h"
#include "chrome/browser/web_applications/web_app_registrar.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "components/webapps/browser/install_result_code.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "components/webapps/common/web_app_id.h"
#include "net/http/http_status_code.h"
#include "testing/gtest/include/gtest/gtest.h"
diff --git a/chrome/browser/web_applications/test/fake_web_contents_manager.cc b/chrome/browser/web_applications/test/fake_web_contents_manager.cc
index 21292f2..20a303a 100644
--- a/chrome/browser/web_applications/test/fake_web_contents_manager.cc
+++ b/chrome/browser/web_applications/test/fake_web_contents_manager.cc
@@ -18,7 +18,7 @@
#include "chrome/browser/web_applications/web_app_install_utils.h"
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
#include "chrome/browser/web_applications/web_contents/web_app_icon_downloader.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "components/webapps/common/web_page_metadata.mojom.h"
#include "content/public/browser/web_contents.h"
#include "third_party/blink/public/mojom/manifest/manifest.mojom.h"
@@ -27,9 +27,10 @@
namespace web_app {
namespace {
-bool EqualsWithComparison(const GURL& a,
- const GURL& b,
- WebAppUrlLoader::UrlComparison url_comparison) {
+bool EqualsWithComparison(
+ const GURL& a,
+ const GURL& b,
+ webapps::WebAppUrlLoader::UrlComparison url_comparison) {
DCHECK(a.is_valid());
DCHECK(b.is_valid());
if (a == b) {
@@ -37,12 +38,12 @@
}
GURL::Replacements replace;
switch (url_comparison) {
- case WebAppUrlLoader::UrlComparison::kExact:
+ case webapps::WebAppUrlLoader::UrlComparison::kExact:
return false;
- case WebAppUrlLoader::UrlComparison::kSameOrigin:
+ case webapps::WebAppUrlLoader::UrlComparison::kSameOrigin:
replace.ClearPath();
[[fallthrough]];
- case WebAppUrlLoader::UrlComparison::kIgnoreQueryParamsAndRef:
+ case webapps::WebAppUrlLoader::UrlComparison::kIgnoreQueryParamsAndRef:
replace.ClearQuery();
replace.ClearRef();
break;
@@ -53,7 +54,7 @@
// TODO(http://b/262606416): Replace FakeWebAppUrlLoader with this by redoing
// how the web contents dependency is wrapped.
-class FakeWebContentsManager::FakeUrlLoader : public WebAppUrlLoader {
+class FakeWebContentsManager::FakeUrlLoader : public webapps::WebAppUrlLoader {
public:
explicit FakeUrlLoader(base::WeakPtr<FakeWebContentsManager> manager)
: manager_(manager) {}
@@ -76,8 +77,9 @@
DLOG(WARNING) << "No page state at url: " << url.spec();
base::SequencedTaskRunner::GetCurrentDefault()->PostTask(
FROM_HERE,
- base::BindOnce(std::move(callback),
- WebAppUrlLoaderResult::kFailedErrorPageLoaded));
+ base::BindOnce(
+ std::move(callback),
+ webapps::WebAppUrlLoaderResult::kFailedErrorPageLoaded));
return;
}
FakeWebContentsManager::FakePageState& page = page_it->second;
@@ -88,8 +90,9 @@
url_comparison)) {
base::SequencedTaskRunner::GetCurrentDefault()->PostTask(
FROM_HERE,
- base::BindOnce(std::move(callback),
- WebAppUrlLoaderResult::kRedirectedUrlLoaded));
+ base::BindOnce(
+ std::move(callback),
+ webapps::WebAppUrlLoaderResult::kRedirectedUrlLoaded));
return;
}
}
@@ -368,7 +371,8 @@
loaded_urls_[web_contents] = url;
}
-std::unique_ptr<WebAppUrlLoader> FakeWebContentsManager::CreateUrlLoader() {
+std::unique_ptr<webapps::WebAppUrlLoader>
+FakeWebContentsManager::CreateUrlLoader() {
return std::make_unique<FakeUrlLoader>(weak_factory_.GetWeakPtr());
}
@@ -401,7 +405,8 @@
const GURL& start_url,
std::u16string_view name) {
FakePageState& install_page_state = GetOrCreatePageState(install_url);
- install_page_state.url_load_result = WebAppUrlLoaderResult::kUrlLoaded;
+ install_page_state.url_load_result =
+ webapps::WebAppUrlLoaderResult::kUrlLoaded;
install_page_state.redirection_url = std::nullopt;
install_page_state.title = u"Page title";
diff --git a/chrome/browser/web_applications/test/fake_web_contents_manager.h b/chrome/browser/web_applications/test/fake_web_contents_manager.h
index a2139ba..1bf0cf2 100644
--- a/chrome/browser/web_applications/test/fake_web_contents_manager.h
+++ b/chrome/browser/web_applications/test/fake_web_contents_manager.h
@@ -16,9 +16,9 @@
#include "chrome/browser/web_applications/web_app_install_info.h"
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
#include "chrome/browser/web_applications/web_contents/web_app_icon_downloader.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/browser/web_applications/web_contents/web_contents_manager.h"
#include "components/webapps/browser/installable/installable_logging.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "components/webapps/common/web_page_metadata.mojom-forward.h"
#include "third_party/abseil-cpp/absl/types/variant.h"
#include "third_party/blink/public/mojom/manifest/manifest.mojom.h"
@@ -66,8 +66,8 @@
// will be given as the result. Otherwise,`kRedirectedUrlLoaded` is
// returned.
std::optional<GURL> redirection_url = std::nullopt;
- WebAppUrlLoaderResult url_load_result =
- WebAppUrlLoaderResult::kFailedErrorPageLoaded;
+ webapps::WebAppUrlLoaderResult url_load_result =
+ webapps::WebAppUrlLoaderResult::kFailedErrorPageLoaded;
// `WebAppDataRetriever::GetWebAppInstallInfo`:
bool return_null_info = false;
@@ -112,7 +112,7 @@
void SetUrlLoaded(content::WebContents* web_contents, const GURL& url);
- std::unique_ptr<WebAppUrlLoader> CreateUrlLoader() override;
+ std::unique_ptr<webapps::WebAppUrlLoader> CreateUrlLoader() override;
std::unique_ptr<WebAppDataRetriever> CreateDataRetriever() override;
std::unique_ptr<WebAppIconDownloader> CreateIconDownloader() override;
@@ -138,7 +138,7 @@
using LoadUrlTracker = base::RepeatingCallback<void(
content::NavigationController::LoadURLParams& load_url_params,
content::WebContents* web_contents,
- WebAppUrlLoader::UrlComparison url_comparison)>;
+ webapps::WebAppUrlLoader::UrlComparison url_comparison)>;
// Specify a `base::RepeatingCallback` that is invoked with the arguments
// passed to `WebAppUrlLoader::LoadUrl` whenever it is called on one of the
diff --git a/chrome/browser/web_applications/test/test_web_app_url_loader.h b/chrome/browser/web_applications/test/test_web_app_url_loader.h
index 4b1f3ec..b87a002 100644
--- a/chrome/browser/web_applications/test/test_web_app_url_loader.h
+++ b/chrome/browser/web_applications/test/test_web_app_url_loader.h
@@ -12,12 +12,12 @@
#include "base/containers/queue.h"
#include "base/functional/callback.h"
#include "base/functional/callback_helpers.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "url/gurl.h"
namespace web_app {
-class TestWebAppUrlLoader : public WebAppUrlLoader {
+class TestWebAppUrlLoader : public webapps::WebAppUrlLoader {
public:
TestWebAppUrlLoader();
TestWebAppUrlLoader(const TestWebAppUrlLoader&) = delete;
diff --git a/chrome/browser/web_applications/web_app_command_manager.cc b/chrome/browser/web_applications/web_app_command_manager.cc
index 50c6cca..7393cb1 100644
--- a/chrome/browser/web_applications/web_app_command_manager.cc
+++ b/chrome/browser/web_applications/web_app_command_manager.cc
@@ -28,9 +28,9 @@
#include "chrome/browser/web_applications/web_app_install_manager.h"
#include "chrome/browser/web_applications/web_app_install_utils.h"
#include "chrome/browser/web_applications/web_app_provider.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/browser/web_applications/web_contents/web_contents_manager.h"
#include "chrome/common/chrome_features.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/browser/web_contents.h"
namespace web_app {
diff --git a/chrome/browser/web_applications/web_app_command_manager.h b/chrome/browser/web_applications/web_app_command_manager.h
index 18555d31..fa02414 100644
--- a/chrome/browser/web_applications/web_app_command_manager.h
+++ b/chrome/browser/web_applications/web_app_command_manager.h
@@ -26,10 +26,13 @@
class WebContents;
}
+namespace webapps {
+class WebAppUrlLoader;
+}
+
namespace web_app {
class WebAppProvider;
-class WebAppUrlLoader;
// The command manager is used to schedule commands or callbacks to write & read
// from the WebAppProvider system. To use, simply call `ScheduleCommand` to
@@ -116,7 +119,7 @@
raw_ptr<WebAppProvider> provider_ = nullptr;
std::unique_ptr<content::WebContents> shared_web_contents_;
- std::unique_ptr<WebAppUrlLoader> url_loader_;
+ std::unique_ptr<webapps::WebAppUrlLoader> url_loader_;
bool started_ = false;
bool is_in_shutdown_ = false;
diff --git a/chrome/browser/web_applications/web_app_command_scheduler.cc b/chrome/browser/web_applications/web_app_command_scheduler.cc
index c90e234..fc25a0f06 100644
--- a/chrome/browser/web_applications/web_app_command_scheduler.cc
+++ b/chrome/browser/web_applications/web_app_command_scheduler.cc
@@ -75,6 +75,7 @@
#include "components/keep_alive_registry/keep_alive_types.h"
#include "components/keep_alive_registry/scoped_keep_alive.h"
#include "components/webapps/browser/installable/installable_metrics.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "content/public/browser/storage_partition_config.h"
#include "content/public/browser/web_contents.h"
@@ -250,7 +251,7 @@
std::make_unique<NavigateAndTriggerInstallDialogCommand>(
install_url, origin, is_renderer_initiated, std::move(callback),
provider_->ui_manager().GetWeakPtr(),
- std::make_unique<WebAppUrlLoader>(),
+ std::make_unique<webapps::WebAppUrlLoader>(),
std::make_unique<WebAppDataRetriever>(), &*profile_),
location);
}
diff --git a/chrome/browser/web_applications/web_app_logging.cc b/chrome/browser/web_applications/web_app_logging.cc
index c6539eb..154a698 100644
--- a/chrome/browser/web_applications/web_app_logging.cc
+++ b/chrome/browser/web_applications/web_app_logging.cc
@@ -10,9 +10,9 @@
#include "chrome/browser/web_applications/web_app_install_info.h"
#include "chrome/browser/web_applications/web_app_install_utils.h"
#include "chrome/browser/web_applications/web_app_utils.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "chrome/common/chrome_features.h"
#include "components/webapps/browser/installable/installable_metrics.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include "components/webapps/common/web_app_id.h"
#include "net/http/http_status_code.h"
@@ -57,9 +57,10 @@
return error_dict;
}
-void InstallErrorLogEntry::LogUrlLoaderError(const char* stage,
- const std::string& url,
- WebAppUrlLoader::Result result) {
+void InstallErrorLogEntry::LogUrlLoaderError(
+ const char* stage,
+ const std::string& url,
+ webapps::WebAppUrlLoaderResult result) {
if (!error_dict_)
return;
diff --git a/chrome/browser/web_applications/web_app_logging.h b/chrome/browser/web_applications/web_app_logging.h
index c07473b4..fbfb245 100644
--- a/chrome/browser/web_applications/web_app_logging.h
+++ b/chrome/browser/web_applications/web_app_logging.h
@@ -12,10 +12,13 @@
#include "chrome/browser/web_applications/web_app_constants.h"
#include "chrome/browser/web_applications/web_app_install_info.h"
#include "chrome/browser/web_applications/web_app_install_utils.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
#include "components/webapps/browser/installable/installable_metrics.h"
#include "components/webapps/common/web_app_id.h"
+namespace webapps {
+enum class WebAppUrlLoaderResult;
+}
+
namespace web_app {
// This class is used to accumulate a single log entry
@@ -39,7 +42,7 @@
void LogUrlLoaderError(const char* stage,
const std::string& url,
- WebAppUrlLoader::Result result);
+ webapps::WebAppUrlLoaderResult result);
void LogExpectedAppIdError(const char* stage,
const std::string& url,
const webapps::AppId& app_id,
diff --git a/chrome/browser/web_applications/web_contents/web_contents_manager.cc b/chrome/browser/web_applications/web_contents/web_contents_manager.cc
index 0f373d49..b2f78b2 100644
--- a/chrome/browser/web_applications/web_contents/web_contents_manager.cc
+++ b/chrome/browser/web_applications/web_contents/web_contents_manager.cc
@@ -8,15 +8,16 @@
#include "chrome/browser/web_applications/web_contents/web_app_data_retriever.h"
#include "chrome/browser/web_applications/web_contents/web_app_icon_downloader.h"
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
namespace web_app {
WebContentsManager::WebContentsManager() = default;
WebContentsManager::~WebContentsManager() = default;
-std::unique_ptr<WebAppUrlLoader> WebContentsManager::CreateUrlLoader() {
- return std::make_unique<WebAppUrlLoader>();
+std::unique_ptr<webapps::WebAppUrlLoader>
+WebContentsManager::CreateUrlLoader() {
+ return std::make_unique<webapps::WebAppUrlLoader>();
}
std::unique_ptr<WebAppDataRetriever> WebContentsManager::CreateDataRetriever() {
diff --git a/chrome/browser/web_applications/web_contents/web_contents_manager.h b/chrome/browser/web_applications/web_contents/web_contents_manager.h
index c3d1f201..c94e5a7 100644
--- a/chrome/browser/web_applications/web_contents/web_contents_manager.h
+++ b/chrome/browser/web_applications/web_contents/web_contents_manager.h
@@ -8,11 +8,14 @@
#include <memory>
#include "base/memory/weak_ptr.h"
+namespace webapps {
+class WebAppUrlLoader;
+}
+
namespace web_app {
class WebAppDataRetriever;
class WebAppIconDownloader;
-class WebAppUrlLoader;
// This manager is intended to wrap all of the functionality that the
// `WebAppProvider` system needs from `WebContents`. This encompasses retrieving
@@ -28,7 +31,7 @@
WebContentsManager();
virtual ~WebContentsManager();
- virtual std::unique_ptr<WebAppUrlLoader> CreateUrlLoader();
+ virtual std::unique_ptr<webapps::WebAppUrlLoader> CreateUrlLoader();
virtual std::unique_ptr<WebAppDataRetriever> CreateDataRetriever();
diff --git a/chrome/browser/web_applications/web_contents/web_app_url_loader_browsertest.cc b/chrome/browser/webapps/web_contents/web_app_url_loader_browsertest.cc
similarity index 93%
rename from chrome/browser/web_applications/web_contents/web_app_url_loader_browsertest.cc
rename to chrome/browser/webapps/web_contents/web_app_url_loader_browsertest.cc
index 189f00c1..5df71d75 100644
--- a/chrome/browser/web_applications/web_contents/web_app_url_loader_browsertest.cc
+++ b/chrome/browser/webapps/web_contents/web_app_url_loader_browsertest.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include <optional>
@@ -17,9 +17,8 @@
#include "base/test/test_mock_time_task_runner.h"
#include "base/time/time.h"
#include "chrome/browser/profiles/profile.h"
-#include "chrome/browser/ui/browser.h"
-#include "chrome/browser/ui/web_applications/web_app_controller_browsertest.h"
-#include "chrome/test/base/in_process_browser_test.h"
+#include "chrome/test/base/chrome_test_utils.h"
+#include "content/public/browser/web_contents_observer.h"
#include "content/public/browser/web_contents.h"
#include "content/public/test/browser_test.h"
#include "net/dns/mock_host_resolver.h"
@@ -28,7 +27,14 @@
#include "net/test/embedded_test_server/http_response.h"
#include "testing/gtest/include/gtest/gtest.h"
-namespace web_app {
+#if BUILDFLAG(IS_ANDROID)
+#include "chrome/test/base/android/android_browser_test.h"
+#else
+#include "chrome/test/base/in_process_browser_test.h"
+#include "chrome/test/base/ui_test_utils.h"
+#endif
+
+namespace webapps {
using UrlResult = WebAppUrlLoader::Result;
using UrlComparison = WebAppUrlLoader::UrlComparison;
@@ -68,7 +74,7 @@
return http_response;
}
-class WebAppUrlLoaderTest : public WebAppControllerBrowserTest {
+class WebAppUrlLoaderTest : public PlatformBrowserTest {
public:
WebAppUrlLoaderTest() = default;
WebAppUrlLoaderTest(const WebAppUrlLoaderTest&) = delete;
@@ -77,16 +83,16 @@
void SetUpOnMainThread() override {
web_contents_ = content::WebContents::Create(
- content::WebContents::CreateParams(browser()->profile()));
+ content::WebContents::CreateParams(profile()));
host_resolver()->AddRule("*", "127.0.0.1");
- WebAppControllerBrowserTest::SetUpOnMainThread();
+ PlatformBrowserTest::SetUpOnMainThread();
}
void TearDownOnMainThread() override {
// The WebContents needs to be destroyed before the profile.
web_contents_.reset();
- WebAppControllerBrowserTest::TearDownOnMainThread();
+ PlatformBrowserTest::TearDownOnMainThread();
}
UrlResult LoadUrlAndWait(UrlComparison url_comparison,
@@ -110,6 +116,10 @@
}
protected:
+Profile* profile() {
+ return chrome_test_utils::GetProfile(this);
+}
+
content::WebContents* web_contents() { return web_contents_.get(); }
void ResetWebContents() { web_contents_.reset(); }
@@ -245,7 +255,8 @@
// Forward the clock so that |loader| times out first load of about:blank.
// It is unclear why this load also needs to time out, and can't just load
// correctly.
- task_runner->FastForwardBy(WebAppUrlLoader::kSecondsToWaitForWebContentsLoad);
+ task_runner->FastForwardBy(
+ webapps::WebAppUrlLoader::kSecondsToWaitForWebContentsLoad);
task_runner->RunUntilIdle();
// Run all pending tasks. The URL should still be loading now.
@@ -257,7 +268,8 @@
EXPECT_FALSE(result.has_value());
// Forward the clock so that |loader| times out.
- task_runner->FastForwardBy(WebAppUrlLoader::kSecondsToWaitForWebContentsLoad);
+ task_runner->FastForwardBy(
+ webapps::WebAppUrlLoader::kSecondsToWaitForWebContentsLoad);
task_runner->RunUntilIdle();
ASSERT_TRUE(result);
EXPECT_EQ(UrlResult::kFailedPageTookTooLong, result.value());
@@ -298,10 +310,10 @@
std::unique_ptr<content::WebContents> web_contents1 =
content::WebContents::Create(
- content::WebContents::CreateParams(browser()->profile()));
+ content::WebContents::CreateParams(profile()));
std::unique_ptr<content::WebContents> web_contents2 =
content::WebContents::Create(
- content::WebContents::CreateParams(browser()->profile()));
+ content::WebContents::CreateParams(profile()));
base::RunLoop run_loop;
base::RepeatingClosure barrier_closure =
@@ -403,4 +415,4 @@
UrlResult::kUrlLoaded, 2);
}
-} // namespace web_app
+} // namespace webapps
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
index 1ab5e76..8de5b9c 100644
--- a/chrome/test/BUILD.gn
+++ b/chrome/test/BUILD.gn
@@ -1349,6 +1349,7 @@
"../browser/ui/webui/policy/policy_test_ui_browsertest.cc",
"../browser/ui/webui/policy/policy_ui_browsertest.cc",
"../browser/user_agent/android_user_agent_browsertest.cc",
+ "../browser/webapps/web_contents/web_app_url_loader_browsertest.cc",
"../renderer/autofill/fake_mojo_password_manager_driver.cc",
"../renderer/autofill/fake_mojo_password_manager_driver.h",
"../renderer/autofill/fake_password_generation_driver.cc",
@@ -2374,6 +2375,7 @@
"../browser/tpcd/support/top_level_trial_service_browsertest.cc",
"../browser/tpcd/support/tpcd_support_browsertest.cc",
"../browser/tpcd/support/validity_service_browsertest.cc",
+ "../browser/webapps/web_contents/web_app_url_loader_browsertest.cc",
# TODO(b/246519185) - Py3 incompatible, decide if to keep test.
# "../browser/media/webrtc/webrtc_apprtc_browsertest.cc",
diff --git a/components/webapps/browser/BUILD.gn b/components/webapps/browser/BUILD.gn
index d9b13e9..647651f9 100644
--- a/components/webapps/browser/BUILD.gn
+++ b/components/webapps/browser/BUILD.gn
@@ -68,6 +68,8 @@
"installable/ml_installability_promoter.h",
"pwa_install_path_tracker.cc",
"pwa_install_path_tracker.h",
+ "web_contents/web_app_url_loader.cc",
+ "web_contents/web_app_url_loader.h",
"webapps_client.cc",
"webapps_client.h",
]
@@ -192,6 +194,7 @@
"installable/installable_evaluator_unittest.cc",
"installable/installable_task_queue_unittest.cc",
"pwa_install_path_tracker_unittest.cc",
+ "web_contents/web_app_url_loader_unittest.cc",
]
deps = [
":browser",
diff --git a/components/webapps/browser/DEPS b/components/webapps/browser/DEPS
index 19cb90b..e810068 100644
--- a/components/webapps/browser/DEPS
+++ b/components/webapps/browser/DEPS
@@ -19,9 +19,11 @@
"+content/public/test",
"+mojo/public/cpp",
"+net/base",
+ "+net/http",
"+storage/browser/quota",
"+services/metrics/public/cpp",
"+services/network/public/cpp",
+ "+services/network/public/mojom",
"+services/service_manager/public/cpp",
"+skia/ext",
"+third_party/blink/public/common",
diff --git a/chrome/browser/web_applications/web_contents/web_app_url_loader.cc b/components/webapps/browser/web_contents/web_app_url_loader.cc
similarity index 98%
rename from chrome/browser/web_applications/web_contents/web_app_url_loader.cc
rename to components/webapps/browser/web_contents/web_app_url_loader.cc
index 9ba4f12..cb92e01b 100644
--- a/chrome/browser/web_applications/web_contents/web_app_url_loader.cc
+++ b/components/webapps/browser/web_contents/web_app_url_loader.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include <memory>
#include <utility>
@@ -27,7 +27,7 @@
#include "url/gurl.h"
#include "url/url_constants.h"
-namespace web_app {
+namespace webapps {
namespace {
using UrlComparison = WebAppUrlLoader::UrlComparison;
diff --git a/chrome/browser/web_applications/web_contents/web_app_url_loader.h b/components/webapps/browser/web_contents/web_app_url_loader.h
similarity index 92%
rename from chrome/browser/web_applications/web_contents/web_app_url_loader.h
rename to components/webapps/browser/web_contents/web_app_url_loader.h
index 33441b7..896c61e 100644
--- a/chrome/browser/web_applications/web_contents/web_app_url_loader.h
+++ b/components/webapps/browser/web_contents/web_app_url_loader.h
@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef CHROME_BROWSER_WEB_APPLICATIONS_WEB_CONTENTS_WEB_APP_URL_LOADER_H_
-#define CHROME_BROWSER_WEB_APPLICATIONS_WEB_CONTENTS_WEB_APP_URL_LOADER_H_
+#ifndef COMPONENTS_WEBAPPS_BROWSER_WEB_CONTENTS_WEB_APP_URL_LOADER_H_
+#define COMPONENTS_WEBAPPS_BROWSER_WEB_CONTENTS_WEB_APP_URL_LOADER_H_
#include "base/functional/callback_forward.h"
#include "base/memory/weak_ptr.h"
@@ -16,7 +16,7 @@
class WebContents;
} // namespace content
-namespace web_app {
+namespace webapps {
// Result enum values are persisted to logs. Entries should not be renumbered
// and numeric values should never be reused. Update corresponding enums.xml
@@ -96,4 +96,4 @@
} // namespace web_app
-#endif // CHROME_BROWSER_WEB_APPLICATIONS_WEB_CONTENTS_WEB_APP_URL_LOADER_H_
+#endif // COMPONENTS_WEBAPPS_BROWSER_WEB_CONTENTS_WEB_APP_URL_LOADER_H_
diff --git a/chrome/browser/web_applications/web_contents/web_app_url_loader_unittest.cc b/components/webapps/browser/web_contents/web_app_url_loader_unittest.cc
similarity index 93%
rename from chrome/browser/web_applications/web_contents/web_app_url_loader_unittest.cc
rename to components/webapps/browser/web_contents/web_app_url_loader_unittest.cc
index 28e03cb..057317c 100644
--- a/chrome/browser/web_applications/web_contents/web_app_url_loader_unittest.cc
+++ b/components/webapps/browser/web_contents/web_app_url_loader_unittest.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "chrome/browser/web_applications/web_contents/web_app_url_loader.h"
+#include "components/webapps/browser/web_contents/web_app_url_loader.h"
#include <memory>
#include <optional>
@@ -12,23 +12,23 @@
#include "base/task/sequenced_task_runner.h"
#include "base/test/bind.h"
#include "base/test/test_future.h"
-#include "chrome/browser/web_applications/test/web_app_test.h"
+#include "content/public/test/test_renderer_host.h"
#include "content/public/common/url_constants.h"
#include "content/public/test/web_contents_tester.h"
#include "testing/gtest/include/gtest/gtest.h"
-namespace web_app {
+namespace webapps {
-class WebAppUrlLoaderTest : public WebAppTest {
+class WebAppUrlLoaderTest : public content::RenderViewHostTestHarness {
public:
void SetUp() override {
- WebAppTest::SetUp();
+ content::RenderViewHostTestHarness::SetUp();
loader_ = std::make_unique<WebAppUrlLoader>();
}
void TearDown() override {
loader_.reset();
- WebAppTest::TearDown();
+ content::RenderViewHostTestHarness::TearDown();
}
content::WebContentsTester& web_contents_tester() {