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

Unified Diff: ui/views/controls/menu/submenu_view.cc

Issue 1177503003: Remove the 2-level input method system & InputMethodBridge. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: per comments Created 5 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: ui/views/controls/menu/submenu_view.cc
diff --git a/ui/views/controls/menu/submenu_view.cc b/ui/views/controls/menu/submenu_view.cc
index b147aa6c958ef81d7cf5cb73c6fb78b9ee546031..e234b0a886a77c7a0bd8c287b62707b5150b8b24 100644
--- a/ui/views/controls/menu/submenu_view.cc
+++ b/ui/views/controls/menu/submenu_view.cc
@@ -8,6 +8,7 @@
#include "base/compiler_specific.h"
#include "ui/accessibility/ax_view_state.h"
+#include "ui/base/ime/input_method.h"
#include "ui/compositor/paint_recorder.h"
#include "ui/events/event.h"
#include "ui/gfx/canvas.h"
@@ -57,6 +58,9 @@ SubmenuView::~SubmenuView() {
// necessarily closed).
Close();
+ if (GetInputMethod())
+ GetInputMethod()->DetachTextInputClient(GetPrefixSelector());
+
delete scroll_view_container_;
}
@@ -80,6 +84,10 @@ MenuItemView* SubmenuView::GetMenuItemAt(int index) {
return NULL;
}
+PrefixSelector* SubmenuView::GetPrefixSelector() {
+ return &prefix_selector_;
+}
+
void SubmenuView::ChildPreferredSizeChanged(View* child) {
if (!resize_open_menu_)
return;
@@ -184,10 +192,6 @@ void SubmenuView::GetAccessibleState(ui::AXViewState* state) {
state->role = ui::AX_ROLE_MENU_LIST_POPUP;
}
-ui::TextInputClient* SubmenuView::GetTextInputClient() {
- return &prefix_selector_;
-}
-
void SubmenuView::PaintChildren(const ui::PaintContext& context) {
View::PaintChildren(context);

Powered by Google App Engine
This is Rietveld 408576698