1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "chrome/browser/ui/profile_error_dialog.h"
7 #include "base/auto_reset.h"
8 #include "base/base_switches.h"
9 #include "base/command_line.h"
10 #include "base/metrics/histogram.h"
11 #include "chrome/browser/ui/simple_message_box.h"
12 #include "chrome/grit/chromium_strings.h"
13 #include "ui/base/l10n/l10n_util.h"
15 void ShowProfileErrorDialog(ProfileErrorType type
, int message_id
) {
16 #if defined(OS_ANDROID) || defined(OS_IOS)
19 UMA_HISTOGRAM_ENUMERATION("Profile.ProfileError", type
, PROFILE_ERROR_END
);
20 if (base::CommandLine::ForCurrentProcess()->HasSwitch(
21 switches::kNoErrorDialogs
))
24 static bool is_showing_profile_error_dialog
= false;
25 if (!is_showing_profile_error_dialog
) {
26 base::AutoReset
<bool> resetter(&is_showing_profile_error_dialog
, true);
27 chrome::ShowMessageBox(NULL
,
28 l10n_util::GetStringUTF16(IDS_PRODUCT_NAME
),
29 l10n_util::GetStringUTF16(message_id
),
30 chrome::MESSAGE_BOX_TYPE_WARNING
);