diff options
author | henrika@chromium.org <henrika@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-02-26 12:48:35 +0000 |
---|---|---|
committer | henrika@chromium.org <henrika@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-02-26 12:48:35 +0000 |
commit | ef9d2743e03420d43095f66bc1925a16ce53635b (patch) | |
tree | 6c46bef905b48fb79b65887220da96cc40728c8a /chrome/browser/extensions/install_tracker.h | |
parent | cd34979455f34dcbc67b067c943338af0600436c (diff) | |
download | chromium_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.h | 43 |
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_ |