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

Unified Diff: chrome/browser/chromeos/profiles/multiprofiles_intro_dialog.cc

Issue 2439863004: Update two chromeos system dialogs to reuse more DialogDelegateView (Closed)
Patch Set: to boldly make changes Created 4 years, 2 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
« no previous file with comments | « chrome/app/generated_resources.grd ('k') | chrome/browser/ui/ash/multi_user/multi_user_warning_dialog.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/chromeos/profiles/multiprofiles_intro_dialog.cc
diff --git a/chrome/browser/chromeos/profiles/multiprofiles_intro_dialog.cc b/chrome/browser/chromeos/profiles/multiprofiles_intro_dialog.cc
index 309c4b0ca5f5a28c285f5fed0919ea5444ee0a4d..cb27f429b582c1dbc26e1475dd8638853e9287b8 100644
--- a/chrome/browser/chromeos/profiles/multiprofiles_intro_dialog.cc
+++ b/chrome/browser/chromeos/profiles/multiprofiles_intro_dialog.cc
@@ -9,9 +9,11 @@
#include "chrome/grit/generated_resources.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/resource/resource_bundle.h"
+#include "ui/views/border.h"
#include "ui/views/controls/button/checkbox.h"
#include "ui/views/controls/label.h"
-#include "ui/views/layout/grid_layout.h"
+#include "ui/views/layout/fill_layout.h"
+#include "ui/views/layout/layout_constants.h"
#include "ui/views/widget/widget.h"
#include "ui/views/window/dialog_delegate.h"
@@ -19,14 +21,8 @@ namespace chromeos {
namespace {
-// Default width/height of the dialog.
-const int kDefaultWidth = 600;
-const int kDefaultHeight = 250;
-
-const int kPaddingToMessage = 20;
-const int kPaddingToCheckBox = 50;
-const int kInset = 40;
-const int kTopInset = 10;
+// Default width of the dialog.
+const int kDefaultWidth = 448;
////////////////////////////////////////////////////////////////////////////////
// Dialog for multi-profiles introduction.
@@ -39,9 +35,11 @@ class MultiprofilesIntroView : public views::DialogDelegateView {
// views::DialogDelegate overrides.
bool Accept() override;
+ View* CreateExtraView() override;
// views::WidgetDelegate overrides.
ui::ModalType GetModalType() const override;
+ base::string16 GetWindowTitle() const override;
// views::View overrides.
gfx::Size GetPreferredSize() const override;
@@ -49,7 +47,7 @@ class MultiprofilesIntroView : public views::DialogDelegateView {
private:
void InitDialog();
- std::unique_ptr<views::Checkbox> no_show_checkbox_;
+ views::Checkbox* no_show_checkbox_;
const base::Callback<void(bool)> on_accept_;
DISALLOW_COPY_AND_ASSIGN(MultiprofilesIntroView);
@@ -71,9 +69,9 @@ void MultiprofilesIntroView::ShowDialog(
const base::Callback<void(bool)> on_accept) {
MultiprofilesIntroView* dialog_view =
new MultiprofilesIntroView(on_accept);
+ dialog_view->InitDialog();
views::DialogDelegate::CreateDialogWidget(
dialog_view, ash::Shell::GetTargetRootWindow(), NULL);
- dialog_view->InitDialog();
views::Widget* widget = dialog_view->GetWidget();
DCHECK(widget);
widget->Show();
@@ -84,69 +82,39 @@ bool MultiprofilesIntroView::Accept() {
return true;
}
+views::View* MultiprofilesIntroView::CreateExtraView() {
+ no_show_checkbox_ = new views::Checkbox(
+ l10n_util::GetStringUTF16(IDS_VISIT_DESKTOP_WARNING_SHOW_DISMISS));
+ no_show_checkbox_->SetChecked(true);
+ return no_show_checkbox_;
+}
+
ui::ModalType MultiprofilesIntroView::GetModalType() const {
return ui::MODAL_TYPE_SYSTEM;
}
+base::string16 MultiprofilesIntroView::GetWindowTitle() const {
+ return l10n_util::GetStringUTF16(IDS_MULTIPROFILES_INTRO_HEADLINE);
+}
+
gfx::Size MultiprofilesIntroView::GetPreferredSize() const {
- return gfx::Size(kDefaultWidth, kDefaultHeight);
+ return gfx::Size(
+ kDefaultWidth,
+ GetLayoutManager()->GetPreferredHeightForWidth(this, kDefaultWidth));
}
void MultiprofilesIntroView::InitDialog() {
- const gfx::Insets kDialogInsets(kTopInset, kInset, kInset, kInset);
-
- // Create the views and layout manager and set them up.
- views::GridLayout* grid_layout = views::GridLayout::CreatePanel(this);
- grid_layout->SetInsets(kDialogInsets);
-
- views::ColumnSet* column_set = grid_layout->AddColumnSet(0);
- column_set->AddColumn(views::GridLayout::FILL, views::GridLayout::FILL, 1,
- views::GridLayout::USE_PREF, 0, 0);
-
- views::Label* title_label_ = new views::Label(
- l10n_util::GetStringUTF16(IDS_MULTIPROFILES_INTRO_HEADLINE));
- title_label_->SetFontList(ui::ResourceBundle::GetSharedInstance().GetFontList(
- ui::ResourceBundle::MediumBoldFont));
- title_label_->SetHorizontalAlignment(gfx::ALIGN_LEFT);
- grid_layout->StartRow(0, 0);
- grid_layout->AddView(title_label_);
- grid_layout->AddPaddingRow(0, kPaddingToMessage);
-
- // Explanation string.
+ SetBorder(views::Border::CreateEmptyBorder(views::kPanelVertMargin,
+ views::kButtonHEdgeMarginNew, 0,
+ views::kButtonHEdgeMarginNew));
+ SetLayoutManager(new views::FillLayout());
+
+ // Explanation string
views::Label* label = new views::Label(
l10n_util::GetStringUTF16(IDS_MULTIPROFILES_INTRO_MESSAGE));
- label->SetFontList(ui::ResourceBundle::GetSharedInstance().GetFontList(
- ui::ResourceBundle::MediumFont));
label->SetMultiLine(true);
label->SetHorizontalAlignment(gfx::ALIGN_LEFT);
- label->SetAllowCharacterBreak(true);
- grid_layout->StartRow(0, 0);
- grid_layout->AddView(label);
-
- // Next explanation string.
- grid_layout->AddPaddingRow(0, kPaddingToMessage);
- views::Label* lower_label = new views::Label(
- l10n_util::GetStringUTF16(IDS_MULTIPROFILES_INTRO_EXPLANATION));
- lower_label->SetFontList(ui::ResourceBundle::GetSharedInstance().GetFontList(
- ui::ResourceBundle::MediumFont));
- lower_label->SetMultiLine(true);
- lower_label->SetHorizontalAlignment(gfx::ALIGN_LEFT);
- lower_label->SetAllowCharacterBreak(true);
- grid_layout->StartRow(0, 0);
- grid_layout->AddView(lower_label);
-
- // No-show again checkbox.
- grid_layout->AddPaddingRow(0, kPaddingToCheckBox);
- no_show_checkbox_.reset(new views::Checkbox(
- l10n_util::GetStringUTF16(IDS_MULTIPROFILES_INTRO_NOSHOW_AGAIN)));
- no_show_checkbox_->SetChecked(true);
- no_show_checkbox_->AdjustFontSize(ui::ResourceBundle::kMediumFontDelta);
- no_show_checkbox_->SetHorizontalAlignment(gfx::ALIGN_LEFT);
- grid_layout->StartRow(0, 0);
- grid_layout->AddView(no_show_checkbox_.get());
-
- SetLayoutManager(grid_layout);
- Layout();
+ AddChildView(label);
}
} // namespace
« no previous file with comments | « chrome/app/generated_resources.grd ('k') | chrome/browser/ui/ash/multi_user/multi_user_warning_dialog.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698