| Index: chrome/browser/ui/views/omnibox/omnibox_view_win.cc
|
| diff --git a/chrome/browser/ui/views/omnibox/omnibox_view_win.cc b/chrome/browser/ui/views/omnibox/omnibox_view_win.cc
|
| index ae13c7ba8bd021656b6772f013109f329683af4e..f998e34c6c6897524e9905b724eb1259e81b034e 100644
|
| --- a/chrome/browser/ui/views/omnibox/omnibox_view_win.cc
|
| +++ b/chrome/browser/ui/views/omnibox/omnibox_view_win.cc
|
| @@ -420,6 +420,7 @@ OmniboxViewWin::OmniboxViewWin(const gfx::Font& font,
|
| in_drag_(false),
|
| initiated_drag_(false),
|
| drop_highlight_position_(-1),
|
| + ime_candidate_window_open_(false),
|
| background_color_(skia::SkColorToCOLORREF(LocationBarView::GetColor(
|
| ToolbarModel::NONE, LocationBarView::BACKGROUND))),
|
| security_level_(ToolbarModel::NONE),
|
| @@ -951,6 +952,12 @@ bool OmniboxViewWin::IsImeComposing() const {
|
| return ime_composing;
|
| }
|
|
|
| +bool OmniboxViewWin::ShouldHideAutocompletePopup() const {
|
| + // Don't let the autocomplete popup be shown when IME candidate window is
|
| + // open, so they don't overlap.
|
| + return ime_candidate_window_open_;
|
| +}
|
| +
|
| views::View* OmniboxViewWin::AddToView(views::View* parent) {
|
| views::NativeViewHost* host = new views::NativeViewHost;
|
| parent->AddChildView(host);
|
| @@ -1351,6 +1358,22 @@ LRESULT OmniboxViewWin::OnGetObject(UINT uMsg,
|
| return 0;
|
| }
|
|
|
| +LRESULT OmniboxViewWin::OnImeNotify(UINT message,
|
| + WPARAM wparam,
|
| + LPARAM lparam) {
|
| + switch (wparam) {
|
| + case IMN_OPENCANDIDATE:
|
| + ime_candidate_window_open_ = true;
|
| + break;
|
| + case IMN_CLOSECANDIDATE:
|
| + ime_candidate_window_open_ = false;
|
| + break;
|
| + default:
|
| + break;
|
| + }
|
| + return DefWindowProc(message, wparam, lparam);
|
| +}
|
| +
|
| LRESULT OmniboxViewWin::OnImeComposition(UINT message,
|
| WPARAM wparam,
|
| LPARAM lparam) {
|
|
|