Index: chrome/browser/ui/webui/sync_promo/sync_promo_handler.cc |
diff --git a/chrome/browser/ui/webui/sync_promo/sync_promo_handler.cc b/chrome/browser/ui/webui/sync_promo/sync_promo_handler.cc |
index 033556615e82e8dfe554326a30e95888dc5c3034..fc984ba754a36a3befa3181b438f221b9e243567 100644 |
--- a/chrome/browser/ui/webui/sync_promo/sync_promo_handler.cc |
+++ b/chrome/browser/ui/webui/sync_promo/sync_promo_handler.cc |
@@ -208,7 +208,7 @@ void SyncPromoHandler::HandleCloseSyncPromo(const base::ListValue* args) { |
// close. |
Browser* browser = |
BrowserList::FindBrowserWithWebContents(web_ui()->GetWebContents()); |
- if (browser && !browser->IsAttemptingToCloseBrowser()) { |
+ if (!browser || !browser->IsAttemptingToCloseBrowser()) { |
GURL url = SyncPromoUI::GetNextPageURLForSyncPromoURL( |
web_ui()->GetWebContents()->GetURL()); |
OpenURLParams params( |
@@ -217,8 +217,27 @@ void SyncPromoHandler::HandleCloseSyncPromo(const base::ListValue* args) { |
} |
} |
+int SyncPromoHandler::GetPromoVersion() { |
+ switch (SyncPromoUI::GetSyncPromoVersion()) { |
+ case SyncPromoUI::VERSION_DEFAULT: |
+ return 0; |
+ case SyncPromoUI::VERSION_DEVICES: |
+ return 1; |
+ case SyncPromoUI::VERSION_VERBOSE: |
+ return 2; |
+ case SyncPromoUI::VERSION_SIMPLE: |
+ return 3; |
+ case SyncPromoUI::VERSION_DIALOG: |
+ // Use the simple sync promo layout for the dialog version. |
+ return 3; |
+ default: |
+ NOTREACHED(); |
+ return 0; |
+ } |
+} |
+ |
void SyncPromoHandler::HandleInitializeSyncPromo(const base::ListValue* args) { |
- base::FundamentalValue version(SyncPromoUI::GetSyncPromoVersion()); |
+ base::FundamentalValue version(GetPromoVersion()); |
web_ui()->CallJavascriptFunction("SyncSetupOverlay.showPromoVersion", |
version); |