summaryrefslogtreecommitdiffstats
path: root/chrome/installer/setup/chrome_frame_ready_mode.h
diff options
context:
space:
mode:
authorgrt@chromium.org <grt@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-01-25 16:44:37 +0000
committergrt@chromium.org <grt@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-01-25 16:44:37 +0000
commitf0260d27d34e40f2e619fb7a16dcd7f9d63fc683 (patch)
tree7e7c9e83bbd2f67b4bbbe11d076c7cc70abd8855 /chrome/installer/setup/chrome_frame_ready_mode.h
parentce7937429f63f3d966346fcd973d720f268cd888 (diff)
downloadchromium_src-f0260d27d34e40f2e619fb7a16dcd7f9d63fc683.zip
chromium_src-f0260d27d34e40f2e619fb7a16dcd7f9d63fc683.tar.gz
chromium_src-f0260d27d34e40f2e619fb7a16dcd7f9d63fc683.tar.bz2
More installer refactoring in the interest of fixing some bugs and cleaning things up:
- Introduced ProductOperations: an interface implemented for each product that takes care of product-specific functions. Each Product owns an instance and delegates certain operations to it. - Removed the use of MasterPreferences by BrowserDistribution so that the former isn't needed outside of the installer. - Replaced PackageProperties with a new BrowserDistribution type (CHROME_BINARIES) - Plumbed the concept of InstallerState more thoroughly through installer - Removed ProductPackageMapping and Package - Moved more registry read ops into ProductState - Validation of products to be installed is now done in CheckPreInstallConditions - Ignore --chrome-frame --ready-mode if chrome is also being installed/updated and a SxS GCF is found (chrome is updated). - Migrates existing single-install Chrome to multi-install where appropriate. - Fixes update to Chrome's uninstallation arguments when Chrome Frame is uninstalled. - Removed dead code from install.cc. - Added code to update products' "ap" values when ready-mode is accepted. - Skip post-install things such as launching the browser when Chrome was implicitly added to the install/upgrade process by virtue of being part of a multi-install. BUG=61609 TEST=run the installer, see it work. existing tests in installer_util_unittests have been updated; new tests are included for ProductState, ChannelInfo, etc. Review URL: http://codereview.chromium.org/6288009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72497 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/installer/setup/chrome_frame_ready_mode.h')
-rw-r--r--chrome/installer/setup/chrome_frame_ready_mode.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/chrome/installer/setup/chrome_frame_ready_mode.h b/chrome/installer/setup/chrome_frame_ready_mode.h
index 35c9507..2541bb8 100644
--- a/chrome/installer/setup/chrome_frame_ready_mode.h
+++ b/chrome/installer/setup/chrome_frame_ready_mode.h
@@ -13,21 +13,26 @@ class CommandLine;
namespace installer {
enum InstallStatus;
+class InstallationState;
class InstallerState;
// Removes the ChromeFrameReadyMode flag from the registry, updates Chrome's
// uninstallation commands to only uninstall Chrome, and adds an entry to the
// Add/Remove Programs list for GCF.
-InstallStatus ChromeFrameReadyModeOptIn(const InstallerState& installer_state,
- const CommandLine& cmd_line);
+InstallStatus ChromeFrameReadyModeOptIn(const InstallationState& machine_state,
+ const InstallerState& installer_state);
// Unregisters the ChromeFrame user agent modification, sets a timestamp for
// restoring it.
-InstallStatus ChromeFrameReadyModeTempOptOut(const CommandLine& cmd_line);
+InstallStatus ChromeFrameReadyModeTempOptOut(
+ const InstallationState& machine_state,
+ const InstallerState& installer_state);
// Re-registers the ChromeFrame user agent modification, restores Ready Mode
// active state flag.
-InstallStatus ChromeFrameReadyModeEndTempOptOut(const CommandLine& cmd_line);
+InstallStatus ChromeFrameReadyModeEndTempOptOut(
+ const InstallationState& machine_state,
+ const InstallerState& installer_state);
} // namespace installer