Commit 50b58dba authored by Giovanni Ortuño Urquidi's avatar Giovanni Ortuño Urquidi Committed by Commit Bot

desktop-pwas: Change Manifest::Location for default apps and policy apps

Sets Manifest::EXTERNAL_PREF_DOWNLOAD as the Manifest::Location for
default apps. This way, when a user uninstall a default app, we'll
save this user decision in a pref and avoid installing the app in the
future.

Also changes the location for policy apps to
MANIFEST::EXTERNAL_POLICY_DOWNLOAD, to be consistent with default
apps' location.

Bug: 878663
Change-Id: I3930feb146f2b7e7c92052d983f23d18b3f5ab95
Reviewed-on: https://chromium-review.googlesource.com/1198715
Commit-Queue: Giovanni Ortuño Urquidi <ortuno@chromium.org>
Reviewed-by: default avatarDevlin <rdevlin.cronin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#588732}
parent b4017c37
......@@ -518,12 +518,13 @@ void BookmarkAppHelper::OnBubbleCompleted(
web_app_info_ = web_app_info;
if (is_policy_installed_app_)
crx_installer_->set_install_source(Manifest::EXTERNAL_POLICY);
crx_installer_->set_install_source(Manifest::EXTERNAL_POLICY_DOWNLOAD);
// InstallWebApp will OR the creation flags with FROM_BOOKMARK.
crx_installer_->set_creation_flags(is_default_app_
? Extension::WAS_INSTALLED_BY_DEFAULT
: Extension::NO_FLAGS);
if (is_default_app_) {
crx_installer_->set_install_source(Manifest::EXTERNAL_PREF_DOWNLOAD);
// InstallWebApp will OR the creation flags with FROM_BOOKMARK.
crx_installer_->set_creation_flags(Extension::WAS_INSTALLED_BY_DEFAULT);
}
crx_installer_->InstallWebApp(web_app_info_);
......
......@@ -237,6 +237,7 @@ TEST_F(BookmarkAppHelperExtensionServiceTest, CreateBookmarkAppDefaultApp) {
ASSERT_TRUE(helper.extension());
EXPECT_TRUE(helper.extension()->from_bookmark());
EXPECT_TRUE(helper.extension()->was_installed_by_default());
EXPECT_EQ(Manifest::EXTERNAL_PREF_DOWNLOAD, helper.extension()->location());
EXPECT_FALSE(Manifest::IsPolicyLocation(helper.extension()->location()));
}
......
......@@ -108,8 +108,8 @@ class WebAppPolicyManagerTest : public ChromeRenderViewHostTestHarness {
void SimulatePreviouslyInstalledPolicyApp(
PendingAppManager::AppInfo app_info) {
SimulatePreviouslyInstalledApp(std::move(app_info),
extensions::Manifest::EXTERNAL_POLICY);
SimulatePreviouslyInstalledApp(
std::move(app_info), extensions::Manifest::EXTERNAL_POLICY_DOWNLOAD);
}
private:
......
......@@ -63,7 +63,7 @@ std::vector<GURL> ExtensionIdsMap::GetPolicyInstalledAppUrls(Profile* profile) {
extension_id, extensions::ExtensionRegistry::EVERYTHING);
if (!extension)
continue;
if (extension->location() != extensions::Manifest::EXTERNAL_POLICY)
if (!extensions::Manifest::IsPolicyLocation(extension->location()))
continue;
policy_installed_app_urls.emplace_back(url_to_id.first);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment