diff options
author | tmdiep@chromium.org <tmdiep@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-05-22 11:12:23 +0000 |
---|---|---|
committer | tmdiep@chromium.org <tmdiep@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-05-22 11:12:23 +0000 |
commit | 411f8aef7e6db2fadec7205a220f24ec8b914486 (patch) | |
tree | 619e67df3f82fa12c572c50cba09ea35fd625896 /extensions/browser/extension_util.cc | |
parent | 128a45f650f3a12253c3c2984d0f6eb36ab2a27b (diff) | |
download | chromium_src-411f8aef7e6db2fadec7205a220f24ec8b914486.zip chromium_src-411f8aef7e6db2fadec7205a220f24ec8b914486.tar.gz chromium_src-411f8aef7e6db2fadec7205a220f24ec8b914486.tar.bz2 |
Moved IS_EPHEMERAL flag to extension prefs
This patch moves the IS_EPHEMERAL flag from the Extension class to
extension prefs. This is because an Extension object is immutable and
this flag needs to be changed after creation to quickly promote a
running ephemeral app to being installed. Otherwise the install must
be delayed until the ephemeral app is closed.
BUG=374018
TBR=sky@chromium.org
TEST=All automated tests
Review URL: https://codereview.chromium.org/282103003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@272157 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'extensions/browser/extension_util.cc')
-rw-r--r-- | extensions/browser/extension_util.cc | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/extensions/browser/extension_util.cc b/extensions/browser/extension_util.cc new file mode 100644 index 0000000..52e7f5f --- /dev/null +++ b/extensions/browser/extension_util.cc @@ -0,0 +1,26 @@ +// Copyright 2014 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "extensions/browser/extension_util.h" + +#include "extensions/browser/extension_prefs.h" +#include "extensions/browser/extension_registry.h" + +namespace extensions { +namespace util { + +bool IsExtensionInstalledPermanently(const std::string& extension_id, + content::BrowserContext* context) { + const Extension* extension = ExtensionRegistry::Get(context)-> + GetExtensionById(extension_id, ExtensionRegistry::EVERYTHING); + return extension && !IsEphemeralApp(extension_id, context); +} + +bool IsEphemeralApp(const std::string& extension_id, + content::BrowserContext* context) { + return ExtensionPrefs::Get(context)->IsEphemeralApp(extension_id); +} + +} // namespace util +} // namespace extensions |