summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions/install_tracker.h
diff options
context:
space:
mode:
authorhenrika@chromium.org <henrika@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-26 12:48:35 +0000
committerhenrika@chromium.org <henrika@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-26 12:48:35 +0000
commitef9d2743e03420d43095f66bc1925a16ce53635b (patch)
tree6c46bef905b48fb79b65887220da96cc40728c8a /chrome/browser/extensions/install_tracker.h
parentcd34979455f34dcbc67b067c943338af0600436c (diff)
downloadchromium_src-ef9d2743e03420d43095f66bc1925a16ce53635b.zip
chromium_src-ef9d2743e03420d43095f66bc1925a16ce53635b.tar.gz
chromium_src-ef9d2743e03420d43095f66bc1925a16ce53635b.tar.bz2
Revert 184627
> Revert 184604 > > Change NotifyAppList*() functions into observers on a ProfileKeyedService. > > > > This causes the events to also be delivered to the app list on ChromeOS, which would otherwise require separate plumbing. > > > > > > BUG=152854 > > > > > > Review URL: https://chromiumcodereview.appspot.com/12298015 > > TBR=koz@chromium.org > Review URL: https://codereview.chromium.org/12340071 TBR=henrika@chromium.org Review URL: https://codereview.chromium.org/12326123 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@184636 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions/install_tracker.h')
-rw-r--r--chrome/browser/extensions/install_tracker.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/chrome/browser/extensions/install_tracker.h b/chrome/browser/extensions/install_tracker.h
new file mode 100644
index 0000000..a15dd53
--- /dev/null
+++ b/chrome/browser/extensions/install_tracker.h
@@ -0,0 +1,43 @@
+// Copyright 2013 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.
+
+#ifndef CHROME_BROWSER_EXTENSIONS_INSTALL_TRACKER_H_
+#define CHROME_BROWSER_EXTENSIONS_INSTALL_TRACKER_H_
+
+#include "base/observer_list.h"
+#include "chrome/browser/extensions/install_observer.h"
+#include "chrome/browser/profiles/profile_keyed_service.h"
+
+namespace gfx {
+class ImageSkia;
+}
+
+namespace extensions {
+
+class InstallTracker : public ProfileKeyedService {
+ public:
+ InstallTracker();
+ virtual ~InstallTracker();
+
+ void AddObserver(InstallObserver* observer);
+ void RemoveObserver(InstallObserver* observer);
+
+ void OnBeginExtensionInstall(
+ const std::string& extension_id,
+ const std::string& extension_name,
+ const gfx::ImageSkia& installing_icon,
+ bool is_app);
+ void OnDownloadProgress(const std::string& extension_id,
+ int percent_downloaded);
+ void OnInstallFailure(const std::string& extension_id);
+
+ private:
+ ObserverList<InstallObserver> observers_;
+
+ DISALLOW_COPY_AND_ASSIGN(InstallTracker);
+};
+
+} // namespace extensions
+
+#endif // CHROME_BROWSER_EXTENSIONS_INSTALL_TRACKER_H_