Chromium Code Reviews| Index: chrome/installer/setup/app_launcher_installer.h |
| diff --git a/chrome/installer/setup/app_launcher_installer.h b/chrome/installer/setup/app_launcher_installer.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..50ce64eb67cd939644f0d9643ed1925f63cd90e7 |
| --- /dev/null |
| +++ b/chrome/installer/setup/app_launcher_installer.h |
| @@ -0,0 +1,49 @@ |
| +// Copyright (c) 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. |
| + |
| +#ifndef CHROME_INSTALLER_SETUP_APP_LAUNCHER_INSTALLER_H_ |
| +#define CHROME_INSTALLER_SETUP_APP_LAUNCHER_INSTALLER_H_ |
| + |
| +#include <windows.h> |
| + |
| +namespace base { |
| +class Version; |
| +} // namespace base |
| + |
| +class WorkItemList; |
| + |
| +namespace installer { |
| + |
| +class InstallerState; |
| + |
| +// The App Launcher is an adjunct product of Chrome Browser, but it has a |
| +// distinct registry entry. This class taps into various points in installer |
| +// flow to update the App Launcher's registry, including the removal of |
| +// deprecated app commands. This concentrates ugly code to to one place to |
| +// facilitate future refactoring. |
| +class AppLauncherInstaller { |
|
grt (UTC plus 2)
2014/12/18 19:27:36
don't use a class as a container of static member
huangs
2015/01/05 06:01:12
Replaced with namespace app_launcher_installer.
|
| + public: |
| + // Create Version key for a App Launcher (if not already present) and sets the |
| + // new product version as the last step. We need this for App Launcher in |
| + // order for shadow registry key to work. |
| + static void AddAppLauncherVersionKeyWorkItems( |
| + HKEY root, |
| + const base::Version& new_version, |
| + bool add_language_identifier, |
| + WorkItemList* list); |
| + |
| + // Called during uninstall, to remove "shadow" registry key for App Launcher. |
| + // Note: The key is added by App Launcher in SetDidRunForNDayActiveStats(). |
| + static void OnUninstall(HKEY reg_root); |
| + |
| + // Unconditionally remove legacy app commands like "install-application", |
| + // "install-extension", and "quick-enable-application-host". |
| + static void RemoveLegacyAppCommandsWorkItems( |
|
grt (UTC plus 2)
2014/12/18 19:27:36
these functions are normally called AddFooWorkItem
huangs
2015/01/05 06:01:12
Renamed to AddRemoveLegacyAppCommandsWorkItems() a
|
| + const InstallerState& installer_state, |
| + WorkItemList* work_item_list); |
| +}; |
| + |
| +} // namespace installer |
| + |
| +#endif // CHROME_INSTALLER_SETUP_APP_LAUNCHER_INSTALLER_H_ |