blob: 94495827ad9731daf8447fb4407044ecb79398cd [file] [log] [blame]
// Copyright 2015 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.
// The App Launcher is an adjunct product of Google Chrome, but it has a
// distinct registry entry. The functions in this file tap 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.
#ifndef CHROME_INSTALLER_SETUP_APP_LAUNCHER_INSTALLER_H_
#define CHROME_INSTALLER_SETUP_APP_LAUNCHER_INSTALLER_H_
#if defined(GOOGLE_CHROME_BUILD)
#include <windows.h>
namespace base {
class FilePath;
class Version;
} // namespace base
class WorkItemList;
namespace installer {
class InstallerState;
// Remove App Launcher's registry key, so it is in sync with Google Chrome's.
// Note: The key is added by App Launcher in SetDidRunForNDayActiveStats().
void RemoveAppLauncherVersionKey(HKEY reg_root);
// Adds work item to unconditionally remove legacy executables.
void AddRemoveLegacyAppHostExeWorkItems(const base::FilePath& target_path,
const base::FilePath& temp_path,
WorkItemList* list);
// Adds work item to unconditionally remove legacy app commands like
// "install-application", "install-extension", and
// "quick-enable-application-host".
void AddRemoveLegacyAppCommandsWorkItems(
const InstallerState& installer_state,
WorkItemList* work_item_list);
} // namespace installer
#endif // defined(GOOGLE_CHROME_BUILD)
#endif // CHROME_INSTALLER_SETUP_APP_LAUNCHER_INSTALLER_H_