| Index: chrome/installer/util/google_chrome_sxs_distribution.cc
|
| diff --git a/chrome/installer/util/google_chrome_sxs_distribution.cc b/chrome/installer/util/google_chrome_sxs_distribution.cc
|
| index 1e623d995e45a689b1e0562fc96cdccab5614868..bf680f8c437d5f904c20bffefe5b9eff7f6efe0e 100644
|
| --- a/chrome/installer/util/google_chrome_sxs_distribution.cc
|
| +++ b/chrome/installer/util/google_chrome_sxs_distribution.cc
|
| @@ -16,7 +16,13 @@ namespace {
|
| const wchar_t kChromeSxSGuid[] = L"{4ea16ac7-fd5a-47c3-875b-dbf4a2008c20}";
|
| const wchar_t kChannelName[] = L"canary";
|
| const wchar_t kBrowserAppId[] = L"ChromeCanary";
|
| +const wchar_t kBrowserProgIdPrefix[] = L"ChromeSSHTM";
|
| +const wchar_t kBrowserProgIdDesc[] = L"Chrome Canary HTML Document";
|
| const int kSxSIconIndex = 4;
|
| +const wchar_t kCommandExecuteImplUuidString[] =
|
| + L"{1BEAC3E3-B852-44F4-B468-8906C062422E}";
|
| +const GUID kCommandExecuteImplUuid = {0x1BEAC3E3, 0xB852, 0x44F4,
|
| + {0xB4, 0x68, 0x89, 0x06, 0xC0, 0x62, 0x42, 0x2E}};
|
|
|
| // The Chrome App Launcher Canary icon is index 6; see chrome_exe.rc.
|
| const int kSxSAppLauncherIconIndex = 6;
|
| @@ -24,7 +30,8 @@ const int kSxSAppLauncherIconIndex = 6;
|
| } // namespace
|
|
|
| GoogleChromeSxSDistribution::GoogleChromeSxSDistribution()
|
| - : GoogleChromeDistribution() {
|
| + : GoogleChromeDistribution(),
|
| + enable_set_as_default_(false) {
|
| GoogleChromeDistribution::set_product_guid(kChromeSxSGuid);
|
| }
|
|
|
| @@ -53,6 +60,14 @@ string16 GoogleChromeSxSDistribution::GetBaseAppId() {
|
| return kBrowserAppId;
|
| }
|
|
|
| +string16 GoogleChromeSxSDistribution::GetBrowserProgIdPrefix() {
|
| + return kBrowserProgIdPrefix;
|
| +}
|
| +
|
| +string16 GoogleChromeSxSDistribution::GetBrowserProgIdDesc() {
|
| + return kBrowserProgIdDesc;
|
| +}
|
| +
|
| string16 GoogleChromeSxSDistribution::GetInstallSubDir() {
|
| return GoogleChromeDistribution::GetInstallSubDir().append(
|
| installer::kSxSSuffix);
|
| @@ -64,7 +79,11 @@ string16 GoogleChromeSxSDistribution::GetUninstallRegPath() {
|
| }
|
|
|
| bool GoogleChromeSxSDistribution::CanSetAsDefault() {
|
| - return false;
|
| + return enable_set_as_default_;
|
| +}
|
| +
|
| +void GoogleChromeSxSDistribution::DebugEnableSetAsDefault() {
|
| + enable_set_as_default_ = true;
|
| }
|
|
|
| int GoogleChromeSxSDistribution::GetIconIndex(ShortcutType shortcut_type) {
|
| @@ -80,9 +99,18 @@ bool GoogleChromeSxSDistribution::GetChromeChannel(string16* channel) {
|
| return true;
|
| }
|
|
|
| -bool GoogleChromeSxSDistribution::GetCommandExecuteImplClsid(
|
| +bool GoogleChromeSxSDistribution::GetCommandExecuteImplClsidString(
|
| string16* handler_class_uuid) {
|
| - return false;
|
| + if (handler_class_uuid)
|
| + *handler_class_uuid = kCommandExecuteImplUuidString;
|
| + return true;
|
| +}
|
| +
|
| +bool GoogleChromeSxSDistribution::GetCommandExecuteImplClsid(
|
| + CLSID* handler_class_uuid) {
|
| + if (handler_class_uuid)
|
| + *handler_class_uuid = kCommandExecuteImplUuid;
|
| + return true;
|
| }
|
|
|
| bool GoogleChromeSxSDistribution::AppHostIsSupported() {
|
|
|