Chromium Code Reviews| Index: chrome/browser/ui/gtk/first_run_dialog.cc |
| diff --git a/chrome/browser/ui/gtk/first_run_dialog.cc b/chrome/browser/ui/gtk/first_run_dialog.cc |
| index aa4b7800490a609fe1f73c798dbefaf47cc8ff3b..4c5933a53eeec08aa743668d7b3fdf5b24983180 100644 |
| --- a/chrome/browser/ui/gtk/first_run_dialog.cc |
| +++ b/chrome/browser/ui/gtk/first_run_dialog.cc |
| @@ -68,17 +68,16 @@ void SetWelcomePosition(GtkFloatingContainer* container, |
| namespace first_run { |
| -void ShowFirstRunDialog(Profile* profile) { |
| - FirstRunDialog::Show(); |
| +bool ShowFirstRunDialog(Profile* profile) { |
| + return FirstRunDialog::Show(); |
| } |
| } // namespace first_run |
| // static |
| bool FirstRunDialog::Show() { |
| -#if !defined(GOOGLE_CHROME_BUILD) |
| - return true; // Nothing to do |
| -#else |
| + bool dialog_shown = false; |
| +#if defined(GOOGLE_CHROME_BUILD) |
| // If the metrics reporting is managed, we won't ask. |
| const PrefService::Preference* metrics_reporting_pref = |
| g_browser_process->local_state()->FindPreference( |
| @@ -87,21 +86,21 @@ bool FirstRunDialog::Show() { |
| !metrics_reporting_pref->IsManaged(); |
| if (!show_reporting_dialog) |
| - return true; // Nothing to do |
| + return; // Nothing to do |
|
jeremy
2013/05/06 17:59:38
Does this compile?
gab
2013/05/06 18:44:51
Whoops, you're right :) -- I'm on Windows! Cleaned
|
| int response = -1; |
| // Object deletes itself. |
| new FirstRunDialog(show_reporting_dialog, &response); |
| + dialog_shown = true; |
| // TODO(port): it should be sufficient to just run the dialog: |
| // int response = gtk_dialog_run(GTK_DIALOG(dialog)); |
| // but that spins a nested message loop and hoses us. :( |
| // http://code.google.com/p/chromium/issues/detail?id=12552 |
| - // Instead, run a loop and extract the response manually. |
| + // Instead, run a loop directly here. |
| MessageLoop::current()->Run(); |
| - |
| - return (response == GTK_RESPONSE_ACCEPT); |
| #endif // defined(GOOGLE_CHROME_BUILD) |
| + return dialog_shown; |
| } |
| FirstRunDialog::FirstRunDialog(bool show_reporting_dialog, int* response) |