Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(395)

Unified Diff: chrome/browser/shell_integration_win.cc

Issue 10963004: Fix registerProtocolHandler OS registration on Windows 8 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: non-win compile, cleanup Created 8 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/shell_integration_win.cc
diff --git a/chrome/browser/shell_integration_win.cc b/chrome/browser/shell_integration_win.cc
index 08b988589ea6495f6b697c69de3544ed9be5ba21..23565123b7ec0488be012563a6cd85bf0c444c85 100644
--- a/chrome/browser/shell_integration_win.cc
+++ b/chrome/browser/shell_integration_win.cc
@@ -461,6 +461,26 @@ bool ShellIntegration::SetAsDefaultBrowserInteractive() {
return true;
}
+bool ShellIntegration::SetAsDefaultProtocolClientInteractive(
+ const std::string& protocol) {
+ FilePath chrome_exe;
+ if (!PathService::Get(base::FILE_EXE, &chrome_exe)) {
+ NOTREACHED() << "Error getting app exe path";
+ return false;
+ }
+
+ BrowserDistribution* dist = BrowserDistribution::GetDistribution();
+ string16 wprotocol = UTF8ToUTF16(protocol);
+ if (!ShellUtil::ShowMakeChromeDefaultProtocolClientSystemUI(
+ dist, chrome_exe.value(), wprotocol)) {
+ LOG(ERROR) << "Failed to launch the set-default Windows UI.";
+ return false;
+ }
+
+ VLOG(1) << "Set-as-default Windows UI triggered.";
+ return true;
+}
+
ShellIntegration::DefaultWebClientState ShellIntegration::IsDefaultBrowser() {
// When we check for default browser we don't necessarily want to count file
// type handlers and icons as having changed the default browser status,

Powered by Google App Engine
This is Rietveld 408576698