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

Unified Diff: chrome/browser/ui/views/website_settings/permission_selector_view.cc

Issue 2069733002: MD - Use real comboboxes in website settings popup. Hide borders (but (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix test Created 4 years, 6 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
Index: chrome/browser/ui/views/website_settings/permission_selector_view.cc
diff --git a/chrome/browser/ui/views/website_settings/permission_selector_view.cc b/chrome/browser/ui/views/website_settings/permission_selector_view.cc
index 75cceaa40893ba65c06ca95f462fdb6911f435ca..8f18d281175dfa00f99e8fc5a3721b4aeabfb006 100644
--- a/chrome/browser/ui/views/website_settings/permission_selector_view.cc
+++ b/chrome/browser/ui/views/website_settings/permission_selector_view.cc
@@ -13,6 +13,7 @@
#include "chrome/grit/generated_resources.h"
#include "ui/accessibility/ax_view_state.h"
#include "ui/base/l10n/l10n_util.h"
+#include "ui/base/material_design/material_design_controller.h"
#include "ui/base/models/combobox_model.h"
#include "ui/gfx/image/image.h"
#include "ui/views/controls/button/menu_button.h"
@@ -180,6 +181,9 @@ class PermissionCombobox : public views::Combobox,
void UpdateSelectedIndex(bool use_default);
private:
+ // views::Combobox:
+ void OnPaintBorder(gfx::Canvas* canvas) override;
+
// views::ComboboxListener:
void OnPerformAction(Combobox* combobox) override;
@@ -194,6 +198,10 @@ PermissionCombobox::PermissionCombobox(const base::string16& text,
set_listener(this);
SetEnabled(enabled);
UpdateSelectedIndex(use_default);
+ if (ui::MaterialDesignController::IsSecondaryUiMaterial()) {
+ set_size_to_largest_label(false);
+ ModelChanged();
+ }
}
PermissionCombobox::~PermissionCombobox() {}
@@ -207,6 +215,13 @@ void PermissionCombobox::UpdateSelectedIndex(bool use_default) {
SetSelectedIndex(index);
}
+void PermissionCombobox::OnPaintBorder(gfx::Canvas* canvas) {
+ // No border except a focus indicator for MD mode.
+ if (ui::MaterialDesignController::IsSecondaryUiMaterial() && !HasFocus())
+ return;
+ Combobox::OnPaintBorder(canvas);
+}
+
void PermissionCombobox::OnPerformAction(Combobox* combobox) {
model_->OnPerformAction(combobox->selected_index());
}
@@ -270,12 +285,18 @@ PermissionSelectorView::PermissionSelectorView(
permission,
base::Bind(&PermissionSelectorView::PermissionChanged,
base::Unretained(this))));
+
// Create the permission menu button.
#if defined(OS_MACOSX)
- InitializeComboboxView(layout, permission);
+ bool use_real_combobox = true;
#else
- InitializeMenuButtonView(layout, permission);
+ bool use_real_combobox =
+ ui::MaterialDesignController::IsSecondaryUiMaterial();
#endif
+ if (use_real_combobox)
+ InitializeComboboxView(layout, permission);
+ else
+ InitializeMenuButtonView(layout, permission);
}
void PermissionSelectorView::AddObserver(

Powered by Google App Engine
This is Rietveld 408576698