summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorakalin@chromium.org <akalin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-04-29 21:18:33 +0000
committerakalin@chromium.org <akalin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-04-29 21:18:33 +0000
commit6cc7dbae8b7131af3df5492a7ea8d69590b44f04 (patch)
tree15abc66fc5943ccc554582d2f3dc0e85fcb6890c
parent7582d88767b96a2d1bd1c1bbfac65aac25ec1996 (diff)
downloadchromium_src-6cc7dbae8b7131af3df5492a7ea8d69590b44f04.zip
chromium_src-6cc7dbae8b7131af3df5492a7ea8d69590b44f04.tar.gz
chromium_src-6cc7dbae8b7131af3df5492a7ea8d69590b44f04.tar.bz2
[Extensions] Remove enabled flag from PendingExtensionInfo
Since sync sets the enabled flag before it adds the pending extension, there's no need to plumb this through anymore. BUG=72659 TEST= Review URL: http://codereview.chromium.org/6902134 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@83593 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/extensions/extension_service.cc18
-rw-r--r--chrome/browser/extensions/extension_service_unittest.cc35
-rw-r--r--chrome/browser/extensions/extension_updater_unittest.cc11
-rw-r--r--chrome/browser/extensions/pending_extension_info.cc3
-rw-r--r--chrome/browser/extensions/pending_extension_info.h3
-rw-r--r--chrome/browser/extensions/pending_extension_manager.cc15
-rw-r--r--chrome/browser/extensions/pending_extension_manager.h4
-rw-r--r--chrome/browser/sync/glue/theme_util.cc3
8 files changed, 27 insertions, 65 deletions
diff --git a/chrome/browser/extensions/extension_service.cc b/chrome/browser/extensions/extension_service.cc
index 45e796e..cba28cc 100644
--- a/chrome/browser/extensions/extension_service.cc
+++ b/chrome/browser/extensions/extension_service.cc
@@ -1396,12 +1396,12 @@ void ExtensionService::ProcessSyncData(
//
// TODO(akalin): Replace silent update with a list of enabled
// permissions.
+ const bool kInstallSilently = true;
if (!pending_extension_manager()->AddFromSync(
id,
extension_sync_data.update_url,
filter,
- true, // install_silently
- extension_sync_data.enabled)) {
+ kInstallSilently)) {
LOG(WARNING) << "Could not add pending extension for " << id;
return;
}
@@ -1811,7 +1811,7 @@ void ExtensionService::OnExtensionInstalled(const Extension* extension) {
// Ensure extension is deleted unless we transfer ownership.
scoped_refptr<const Extension> scoped_extension(extension);
const std::string& id = extension->id();
- bool initial_enable = false;
+ bool initial_enable = IsExtensionEnabled(id);
PendingExtensionInfo pending_extension_info;
if (pending_extension_manager()->GetById(id, &pending_extension_info)) {
@@ -1838,19 +1838,13 @@ void ExtensionService::OnExtensionInstalled(const Extension* extension) {
NOTREACHED();
return;
}
-
- if (extension->is_theme()) {
- DCHECK(pending_extension_info.enable_on_install());
- initial_enable = true;
- } else {
- initial_enable = pending_extension_info.enable_on_install();
- }
} else {
// We explicitly want to re-enable an uninstalled external
// extension; if we're here, that means the user is manually
// installing the extension.
- initial_enable =
- IsExtensionEnabled(id) || IsExternalExtensionUninstalled(id);
+ if (IsExternalExtensionUninstalled(id)) {
+ initial_enable = true;
+ }
}
UMA_HISTOGRAM_ENUMERATION("Extensions.InstallType",
diff --git a/chrome/browser/extensions/extension_service_unittest.cc b/chrome/browser/extensions/extension_service_unittest.cc
index 55f1f47..659971a 100644
--- a/chrome/browser/extensions/extension_service_unittest.cc
+++ b/chrome/browser/extensions/extension_service_unittest.cc
@@ -2075,11 +2075,10 @@ TEST_F(ExtensionServiceTest, AddPendingExtensionFromSync) {
const std::string kFakeId(all_zero);
const GURL kFakeUpdateURL("http:://fake.update/url");
const bool kFakeInstallSilently(true);
- const Extension::State kFakeInitialState(Extension::ENABLED);
EXPECT_TRUE(service_->pending_extension_manager()->AddFromSync(
kFakeId, kFakeUpdateURL, &IsExtension,
- kFakeInstallSilently, kFakeInitialState));
+ kFakeInstallSilently));
PendingExtensionInfo pending_extension_info;
ASSERT_TRUE(service_->pending_extension_manager()->GetById(
@@ -2094,7 +2093,6 @@ const char kGoodId[] = "ldnnhddmnhbkjipkidpdiheffobcpfmf";
const char kGoodUpdateURL[] = "http://good.update/url";
const bool kGoodIsFromSync = true;
const bool kGoodInstallSilently = true;
-const Extension::State kGoodInitialState = Extension::DISABLED;
} // namespace
// Test updating a pending extension.
@@ -2102,21 +2100,16 @@ TEST_F(ExtensionServiceTest, UpdatePendingExtension) {
InitializeEmptyExtensionService();
EXPECT_TRUE(service_->pending_extension_manager()->AddFromSync(
kGoodId, GURL(kGoodUpdateURL), &IsExtension,
- kGoodInstallSilently, kGoodInitialState));
+ kGoodInstallSilently));
EXPECT_TRUE(service_->pending_extension_manager()->IsIdPending(kGoodId));
FilePath path = data_dir_.AppendASCII("good.crx");
- UpdateExtension(kGoodId, path, INSTALLED);
+ UpdateExtension(kGoodId, path, ENABLED);
EXPECT_FALSE(service_->pending_extension_manager()->IsIdPending(kGoodId));
const Extension* extension = service_->GetExtensionById(kGoodId, true);
ASSERT_TRUE(extension);
-
- bool enabled = service_->GetExtensionById(kGoodId, false);
- EXPECT_EQ(enabled, kGoodInitialState == Extension::ENABLED);
- EXPECT_EQ(kGoodInitialState,
- service_->extension_prefs()->GetExtensionState(extension->id()));
}
namespace {
@@ -2131,8 +2124,7 @@ bool IsTheme(const Extension& extension) {
TEST_F(ExtensionServiceTest, UpdatePendingTheme) {
InitializeEmptyExtensionService();
EXPECT_TRUE(service_->pending_extension_manager()->AddFromSync(
- theme_crx, GURL(), &IsTheme,
- false, Extension::ENABLED));
+ theme_crx, GURL(), &IsTheme, false));
EXPECT_TRUE(service_->pending_extension_manager()->IsIdPending(theme_crx));
FilePath path = data_dir_.AppendASCII("theme.crx");
@@ -2185,7 +2177,7 @@ TEST_F(ExtensionServiceTest, UpdatePendingExternalCrxWinsOverSync) {
// Add a crx to be installed from the update mechanism.
EXPECT_TRUE(service_->pending_extension_manager()->AddFromSync(
kGoodId, GURL(kGoodUpdateURL), &IsExtension,
- kGoodInstallSilently, kGoodInitialState));
+ kGoodInstallSilently));
// Check that there is a pending crx, with is_from_sync set to true.
PendingExtensionInfo pending_extension_info;
@@ -2207,7 +2199,7 @@ TEST_F(ExtensionServiceTest, UpdatePendingExternalCrxWinsOverSync) {
// Add a crx to be installed from the update mechanism.
EXPECT_FALSE(service_->pending_extension_manager()->AddFromSync(
kGoodId, GURL(kGoodUpdateURL), &IsExtension,
- kGoodInstallSilently, kGoodInitialState));
+ kGoodInstallSilently));
// Check that the external, non-sync update was not overridden.
ASSERT_TRUE(service_->pending_extension_manager()->GetById(
@@ -2222,8 +2214,7 @@ TEST_F(ExtensionServiceTest, UpdatePendingExternalCrxWinsOverSync) {
TEST_F(ExtensionServiceTest, UpdatePendingCrxThemeMismatch) {
InitializeEmptyExtensionService();
EXPECT_TRUE(service_->pending_extension_manager()->AddFromSync(
- theme_crx, GURL(), &IsExtension,
- true, Extension::ENABLED));
+ theme_crx, GURL(), &IsExtension, true));
EXPECT_TRUE(service_->pending_extension_manager()->IsIdPending(theme_crx));
@@ -2245,8 +2236,7 @@ TEST_F(ExtensionServiceTest, UpdatePendingExtensionFailedShouldInstallTest) {
InitializeEmptyExtensionService();
// Add pending extension with a flipped is_theme.
EXPECT_TRUE(service_->pending_extension_manager()->AddFromSync(
- kGoodId, GURL(kGoodUpdateURL), &IsTheme,
- kGoodInstallSilently, kGoodInitialState));
+ kGoodId, GURL(kGoodUpdateURL), &IsTheme, kGoodInstallSilently));
EXPECT_TRUE(service_->pending_extension_manager()->IsIdPending(kGoodId));
FilePath path = data_dir_.AppendASCII("good.crx");
@@ -2286,9 +2276,8 @@ TEST_F(ExtensionServiceTest, UpdatePendingExtensionAlreadyInstalled) {
// Use AddExtensionImpl() as AddFrom*() would balk.
service_->pending_extension_manager()->AddExtensionImpl(
good->id(), good->update_url(), &IsExtension,
- kGoodIsFromSync, kGoodInstallSilently, kGoodInitialState,
- Extension::INTERNAL);
- UpdateExtension(good->id(), path, INSTALLED);
+ kGoodIsFromSync, kGoodInstallSilently, Extension::INTERNAL);
+ UpdateExtension(good->id(), path, ENABLED);
EXPECT_FALSE(service_->pending_extension_manager()->IsIdPending(kGoodId));
}
@@ -3618,7 +3607,6 @@ TEST_F(ExtensionServiceTest, ProcessSyncDataNotInstalled) {
EXPECT_EQ(extension_sync_data.update_url, info.update_url());
EXPECT_TRUE(info.is_from_sync());
EXPECT_TRUE(info.install_silently());
- EXPECT_EQ(extension_sync_data.enabled, info.enable_on_install());
EXPECT_EQ(Extension::INTERNAL, info.install_source());
// TODO(akalin): Figure out a way to test |info.ShouldAllowInstall()|.
}
@@ -3656,8 +3644,7 @@ class ExtensionSourcePriorityTest : public ExtensionServiceTest {
// Fake a request from sync to install an extension.
bool AddPendingSyncInstall() {
return service_->pending_extension_manager()->AddFromSync(
- crx_id_, GURL(kGoodUpdateURL), &IsExtension,
- kGoodInstallSilently, kGoodInitialState);
+ crx_id_, GURL(kGoodUpdateURL), &IsExtension, kGoodInstallSilently);
}
// Fake a policy install.
diff --git a/chrome/browser/extensions/extension_updater_unittest.cc b/chrome/browser/extensions/extension_updater_unittest.cc
index 6e0e6a3..6cfc5ec 100644
--- a/chrome/browser/extensions/extension_updater_unittest.cc
+++ b/chrome/browser/extensions/extension_updater_unittest.cc
@@ -129,7 +129,6 @@ void SetupPendingExtensionManagerForTest(
(i % 2 == 0) ? &ShouldInstallThemesOnly : &ShouldInstallExtensionsOnly;
const bool kIsFromSync = true;
const bool kInstallSilently = true;
- const Extension::State kInitialState = Extension::ENABLED;
std::string id = GenerateId(base::StringPrintf("extension%i", i));
pending_extension_manager->AddForTesting(
@@ -138,7 +137,6 @@ void SetupPendingExtensionManagerForTest(
should_allow_install,
kIsFromSync,
kInstallSilently,
- kInitialState,
Extension::INTERNAL));
}
}
@@ -645,13 +643,12 @@ class ExtensionUpdaterTest : public testing::Test {
if (pending) {
const bool kIsFromSync = true;
const bool kInstallSilently = true;
- const Extension::State kInitialState = Extension::ENABLED;
PendingExtensionManager* pending_extension_manager =
service->pending_extension_manager();
pending_extension_manager->AddForTesting(
id,
PendingExtensionInfo(test_url, &ShouldAlwaysInstall, kIsFromSync,
- kInstallSilently, kInitialState,
+ kInstallSilently,
Extension::INTERNAL));
}
@@ -1062,14 +1059,14 @@ TEST(ExtensionUpdaterTest, TestManifestFetchesBuilderAddExtension) {
builder.AddPendingExtension(
GenerateId("foo"), PendingExtensionInfo(GURL("http:google.com:foo"),
&ShouldInstallExtensionsOnly,
- false, false, true,
+ false, false,
Extension::INTERNAL));
EXPECT_TRUE(builder.GetFetches().empty());
// Extensions with empty IDs should be rejected.
builder.AddPendingExtension(
"", PendingExtensionInfo(GURL(), &ShouldInstallExtensionsOnly,
- false, false, true,
+ false, false,
Extension::INTERNAL));
EXPECT_TRUE(builder.GetFetches().empty());
@@ -1081,7 +1078,7 @@ TEST(ExtensionUpdaterTest, TestManifestFetchesBuilderAddExtension) {
builder.AddPendingExtension(
GenerateId("foo"), PendingExtensionInfo(GURL(),
&ShouldInstallExtensionsOnly,
- false, false, true,
+ false, false,
Extension::INTERNAL));
std::vector<ManifestFetchData*> fetches = builder.GetFetches();
ASSERT_EQ(1u, fetches.size());
diff --git a/chrome/browser/extensions/pending_extension_info.cc b/chrome/browser/extensions/pending_extension_info.cc
index d20dfb0..7e506ad 100644
--- a/chrome/browser/extensions/pending_extension_info.cc
+++ b/chrome/browser/extensions/pending_extension_info.cc
@@ -9,13 +9,11 @@ PendingExtensionInfo::PendingExtensionInfo(
ShouldAllowInstallPredicate should_allow_install,
bool is_from_sync,
bool install_silently,
- bool enable_on_install,
Extension::Location install_source)
: update_url_(update_url),
should_allow_install_(should_allow_install),
is_from_sync_(is_from_sync),
install_silently_(install_silently),
- enable_on_install_(enable_on_install),
install_source_(install_source) {}
PendingExtensionInfo::PendingExtensionInfo()
@@ -23,5 +21,4 @@ PendingExtensionInfo::PendingExtensionInfo()
should_allow_install_(NULL),
is_from_sync_(true),
install_silently_(false),
- enable_on_install_(false),
install_source_(Extension::INVALID) {}
diff --git a/chrome/browser/extensions/pending_extension_info.h b/chrome/browser/extensions/pending_extension_info.h
index 2459015..7ab82d4 100644
--- a/chrome/browser/extensions/pending_extension_info.h
+++ b/chrome/browser/extensions/pending_extension_info.h
@@ -25,7 +25,6 @@ class PendingExtensionInfo {
ShouldAllowInstallPredicate should_allow_install,
bool is_from_sync,
bool install_silently,
- bool enable_on_install,
Extension::Location install_source);
// Required for STL container membership. Should not be used directly.
@@ -44,7 +43,6 @@ class PendingExtensionInfo {
}
bool is_from_sync() const { return is_from_sync_; }
bool install_silently() const { return install_silently_; }
- bool enable_on_install() const { return enable_on_install_; }
Extension::Location install_source() const { return install_source_; }
private:
@@ -57,7 +55,6 @@ class PendingExtensionInfo {
bool is_from_sync_; // This update check was initiated from sync.
bool install_silently_;
- bool enable_on_install_;
Extension::Location install_source_;
FRIEND_TEST_ALL_PREFIXES(ExtensionServiceTest, AddPendingExtensionFromSync);
diff --git a/chrome/browser/extensions/pending_extension_manager.cc b/chrome/browser/extensions/pending_extension_manager.cc
index b50f6f3..b4b251c 100644
--- a/chrome/browser/extensions/pending_extension_manager.cc
+++ b/chrome/browser/extensions/pending_extension_manager.cc
@@ -50,8 +50,7 @@ bool PendingExtensionManager::AddFromSync(
const std::string& id,
const GURL& update_url,
PendingExtensionInfo::ShouldAllowInstallPredicate should_allow_install,
- bool install_silently,
- bool enable_on_install) {
+ bool install_silently) {
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
if (service_.GetInstalledExtension(id)) {
@@ -64,9 +63,7 @@ bool PendingExtensionManager::AddFromSync(
const Extension::Location kSyncLocation = Extension::INTERNAL;
return AddExtensionImpl(id, update_url, should_allow_install,
- kIsFromSync, install_silently,
- enable_on_install,
- kSyncLocation);
+ kIsFromSync, install_silently, kSyncLocation);
}
void PendingExtensionManager::AddFromExternalUpdateUrl(
@@ -76,7 +73,6 @@ void PendingExtensionManager::AddFromExternalUpdateUrl(
const bool kIsFromSync = false;
const bool kInstallSilently = true;
- const bool kEnableOnInstall = true;
if (service_.IsExternalExtensionUninstalled(id))
return;
@@ -89,7 +85,7 @@ void PendingExtensionManager::AddFromExternalUpdateUrl(
AddExtensionImpl(id, update_url, &AlwaysInstall,
kIsFromSync, kInstallSilently,
- kEnableOnInstall, location);
+ location);
}
@@ -100,14 +96,12 @@ void PendingExtensionManager::AddFromExternalFile(
GURL kUpdateUrl = GURL();
bool kIsFromSync = false;
bool kInstallSilently = true;
- bool kEnableOnInstall = true;
pending_extension_map_[id] =
PendingExtensionInfo(kUpdateUrl,
&AlwaysInstall,
kIsFromSync,
kInstallSilently,
- kEnableOnInstall,
location);
}
@@ -115,7 +109,7 @@ bool PendingExtensionManager::AddExtensionImpl(
const std::string& id, const GURL& update_url,
PendingExtensionInfo::ShouldAllowInstallPredicate should_allow_install,
bool is_from_sync, bool install_silently,
- bool enable_on_install, Extension::Location install_source) {
+ Extension::Location install_source) {
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
// Will add a pending extension record unless this variable is set to false.
@@ -151,7 +145,6 @@ bool PendingExtensionManager::AddExtensionImpl(
should_allow_install,
is_from_sync,
install_silently,
- enable_on_install,
install_source);
return true;
}
diff --git a/chrome/browser/extensions/pending_extension_manager.h b/chrome/browser/extensions/pending_extension_manager.h
index 9e73926..6efbdeb 100644
--- a/chrome/browser/extensions/pending_extension_manager.h
+++ b/chrome/browser/extensions/pending_extension_manager.h
@@ -68,8 +68,7 @@ class PendingExtensionManager {
const std::string& id,
const GURL& update_url,
PendingExtensionInfo::ShouldAllowInstallPredicate should_allow_install,
- bool install_silently,
- bool enable_on_install);
+ bool install_silently);
// Given an extension id and an update URL, schedule the extension
// to be fetched, installed, and activated.
@@ -91,7 +90,6 @@ class PendingExtensionManager {
PendingExtensionInfo::ShouldAllowInstallPredicate should_allow_install,
bool is_from_sync,
bool install_silently,
- bool enable_on_install,
Extension::Location install_source);
// Add a pending extension record directly. Used for unit tests that need
diff --git a/chrome/browser/sync/glue/theme_util.cc b/chrome/browser/sync/glue/theme_util.cc
index 4f5c573..590340d 100644
--- a/chrome/browser/sync/glue/theme_util.cc
+++ b/chrome/browser/sync/glue/theme_util.cc
@@ -103,10 +103,9 @@ void SetCurrentThemeFromThemeSpecifics(
// so by adding it as a pending extension and then triggering an
// auto-update cycle.
const bool kInstallSilently = true;
- const bool kEnableOnInstall = true;
if (!extensions_service->pending_extension_manager()->AddFromSync(
id, update_url, &IsTheme,
- kInstallSilently, kEnableOnInstall)) {
+ kInstallSilently)) {
LOG(WARNING) << "Could not add pending extension for " << id;
return;
}