| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/ui/apps/app_metro_infobar_delegate_win.h" | 5 #include "chrome/browser/ui/apps/app_metro_infobar_delegate_win.h" |
| 6 | 6 |
| 7 #include "apps/app_launch_for_metro_restart_win.h" | |
| 8 #include "base/bind_helpers.h" | 7 #include "base/bind_helpers.h" |
| 9 #include "base/message_loop/message_loop.h" | 8 #include "base/message_loop/message_loop.h" |
| 10 #include "base/prefs/pref_service.h" | 9 #include "base/prefs/pref_service.h" |
| 10 #include "chrome/browser/apps/app_launch_for_metro_restart_win.h" |
| 11 #include "chrome/browser/browser_process.h" | 11 #include "chrome/browser/browser_process.h" |
| 12 #include "chrome/browser/lifetime/application_lifetime.h" | 12 #include "chrome/browser/lifetime/application_lifetime.h" |
| 13 #include "chrome/browser/metro_utils/metro_chrome_win.h" | 13 #include "chrome/browser/metro_utils/metro_chrome_win.h" |
| 14 #include "chrome/browser/profiles/profile.h" | 14 #include "chrome/browser/profiles/profile.h" |
| 15 #include "chrome/browser/ui/app_list/app_list_service_win.h" | 15 #include "chrome/browser/ui/app_list/app_list_service_win.h" |
| 16 #include "chrome/browser/ui/browser.h" | 16 #include "chrome/browser/ui/browser.h" |
| 17 #include "chrome/browser/ui/browser_finder.h" | 17 #include "chrome/browser/ui/browser_finder.h" |
| 18 #include "chrome/browser/ui/browser_window.h" | 18 #include "chrome/browser/ui/browser_window.h" |
| 19 #include "chrome/browser/ui/host_desktop.h" | 19 #include "chrome/browser/ui/host_desktop.h" |
| 20 #include "chrome/common/pref_names.h" | 20 #include "chrome/common/pref_names.h" |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 81 return l10n_util::GetStringUTF16(button == BUTTON_CANCEL ? | 81 return l10n_util::GetStringUTF16(button == BUTTON_CANCEL ? |
| 82 IDS_WIN8_INFOBAR_DESKTOP_RESTART_TO_LAUNCH_APPS_NO_BUTTON : | 82 IDS_WIN8_INFOBAR_DESKTOP_RESTART_TO_LAUNCH_APPS_NO_BUTTON : |
| 83 IDS_WIN8_INFOBAR_DESKTOP_RESTART_TO_LAUNCH_APPS_YES_BUTTON); | 83 IDS_WIN8_INFOBAR_DESKTOP_RESTART_TO_LAUNCH_APPS_YES_BUTTON); |
| 84 } | 84 } |
| 85 | 85 |
| 86 bool AppMetroInfoBarDelegateWin::Accept() { | 86 bool AppMetroInfoBarDelegateWin::Accept() { |
| 87 PrefService* prefs = g_browser_process->local_state(); | 87 PrefService* prefs = g_browser_process->local_state(); |
| 88 if (mode_ == SHOW_APP_LIST) { | 88 if (mode_ == SHOW_APP_LIST) { |
| 89 prefs->SetBoolean(prefs::kRestartWithAppList, true); | 89 prefs->SetBoolean(prefs::kRestartWithAppList, true); |
| 90 } else { | 90 } else { |
| 91 apps::SetAppLaunchForMetroRestart( | 91 app_metro_launch::SetAppLaunchForMetroRestart( |
| 92 Profile::FromBrowserContext(web_contents()->GetBrowserContext()), | 92 Profile::FromBrowserContext(web_contents()->GetBrowserContext()), |
| 93 extension_id_); | 93 extension_id_); |
| 94 } | 94 } |
| 95 | 95 |
| 96 web_contents()->Close(); // Note: deletes |this|. | 96 web_contents()->Close(); // Note: deletes |this|. |
| 97 chrome::AttemptRestartWithModeSwitch(); | 97 chrome::AttemptRestartWithModeSwitch(); |
| 98 return false; | 98 return false; |
| 99 } | 99 } |
| 100 | 100 |
| 101 bool AppMetroInfoBarDelegateWin::Cancel() { | 101 bool AppMetroInfoBarDelegateWin::Cancel() { |
| 102 web_contents()->Close(); | 102 web_contents()->Close(); |
| 103 return false; | 103 return false; |
| 104 } | 104 } |
| 105 | 105 |
| 106 string16 AppMetroInfoBarDelegateWin::GetLinkText() const { | 106 string16 AppMetroInfoBarDelegateWin::GetLinkText() const { |
| 107 return l10n_util::GetStringUTF16(IDS_LEARN_MORE); | 107 return l10n_util::GetStringUTF16(IDS_LEARN_MORE); |
| 108 } | 108 } |
| 109 | 109 |
| 110 bool AppMetroInfoBarDelegateWin::LinkClicked( | 110 bool AppMetroInfoBarDelegateWin::LinkClicked( |
| 111 WindowOpenDisposition disposition) { | 111 WindowOpenDisposition disposition) { |
| 112 web_contents()->OpenURL(content::OpenURLParams( | 112 web_contents()->OpenURL(content::OpenURLParams( |
| 113 GURL("https://support.google.com/chrome/?p=ib_redirect_to_desktop"), | 113 GURL("https://support.google.com/chrome/?p=ib_redirect_to_desktop"), |
| 114 content::Referrer(), | 114 content::Referrer(), |
| 115 (disposition == CURRENT_TAB) ? NEW_FOREGROUND_TAB : disposition, | 115 (disposition == CURRENT_TAB) ? NEW_FOREGROUND_TAB : disposition, |
| 116 content::PAGE_TRANSITION_LINK, false)); | 116 content::PAGE_TRANSITION_LINK, false)); |
| 117 return false; | 117 return false; |
| 118 } | 118 } |
| OLD | NEW |