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

Issue 8824007: Revert 113224 - IME (input method editor) support for Aura, part 3 of 3: Use ui::InputMethod in u... (Closed)

Created:
9 years ago by Ben Goodger (Google)
Modified:
9 years ago
Reviewers:
Yusuke Sato
CC:
chromium-reviews, sadrul, yusukes+watch_chromium.org, ben+watch_chromium.org, dhollowa+watch_chromium.org, jam, penghuang+watch_chromium.org, dpranke-watch+content_chromium.org, joi+watch-content_chromium.org, darin-cc_chromium.org, Paweł Hajdan Jr., James Su, tfarina
Visibility:
Public.

Description

Revert 113224 - IME (input method editor) support for Aura, part 3 of 3: Use ui::InputMethod in ui/aura/. Part 1: http://codereview.chromium.org/8659033/ Part 2: http://codereview.chromium.org/8687027/ The basic design of the feature is that to add an input method object to DesktopHost to feed all KeyPress and KeyRelease events from the system message loop to the input method, and let the input method send IME results (e.g. composition text) to RenderWidgetHostViewAura or NativeWidgetAura as needed. RenderWidgetHostViewAura: - Just like RWHVV, implement ui::TextInputClient interface so that RWHVA could receive an event such as 'SetComposition' and 'InsertChar' from an input method object owned by DesktopHost. - Send a notification to the input method object on focus, blur, text input type change, etc. - OnKeyEvent() handler is now able to handle a non-native key event, e.g. a VKEY_PROCESSKEY event, which is fabricated by the input method editor. NativeWidgetAura: - Use views::InputMethodBridge instead of views::InputMethodIBus. - InputMethodBridge, which implements ui::TextInputClient interface, just receives IME results (e.g. composition text) from ui::InputMethod and forwards them to UI (e.g. a text field). - InputMethodBridge also receives a request like 'CancelComposition' from the UI and forwards the request to ui::InputMethod. DesktopHostLinux: - Creates and owns a ui::InputMethodIBusAura object. If IBus-1.4 is not available (e.g. Goobuntu), creates an instance of ui::MockInputMethod. - In Dispatch(), send a KeyPress and KeyRelease aura event to the input method. - Implement ui::InputMethodDelegate interface so that DesktopHostLinux could receive an key press and key release event which should be sent to NWA or RWHVA. Note that an "is_char" event is always sent directly from the input method to a TextInputClient. the ui::InputMethodDelegate is not used for that purpose. - ShouldSendCharEventForKeyboardCode() is moved to ui::InputMethod since DesktopHostLinux no longer generates a Char event. DesktopHostWin: - IME is not supported yet. Supported platforms: - Aura + Chrome OS (IME works!) - Aura + Chrome OS + TOUCH_UI (compiles, but virtual keyboard is not shown since views::TextInputTypeTracker is not ported to Aura yet.) - Aura + Linux, with and without IBus-1.4 - Aura + Windows (compiles, but IME does not work. views::InputMethodWin is not ported to Aura yet.) BUG=97261 TEST=ran aura_unittests Review URL: http://codereview.chromium.org/8576005 TBR=yusukes@chromium.org Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=113259

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+67 lines, -795 lines) Patch
M content/browser/renderer_host/native_web_keyboard_event_aura.cc View 2 chunks +0 lines, -43 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_aura.h View 7 chunks +0 lines, -44 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_aura.cc View 10 chunks +6 lines, -229 lines 0 comments Download
M content/public/browser/native_web_keyboard_event.h View 2 chunks +0 lines, -8 lines 0 comments Download
M ui/aura/aura.gyp View 2 chunks +0 lines, -8 lines 0 comments Download
M ui/aura/desktop.h View 3 chunks +0 lines, -10 lines 0 comments Download
M ui/aura/desktop.cc View 2 chunks +0 lines, -5 lines 0 comments Download
M ui/aura/desktop_host.h View 3 chunks +1 line, -15 lines 0 comments Download
D ui/aura/desktop_host_ime_unittest.cc View 1 chunk +0 lines, -314 lines 0 comments Download
M ui/aura/desktop_host_linux.cc View 11 chunks +54 lines, -65 lines 0 comments Download
M ui/aura/desktop_host_win.h View 3 chunks +1 line, -17 lines 0 comments Download
M ui/aura/desktop_host_win.cc View 4 chunks +0 lines, -25 lines 0 comments Download
M ui/aura/event.h View 1 chunk +0 lines, -1 line 0 comments Download
M ui/base/keycodes/keyboard_code_conversion.cc View 1 chunk +0 lines, -4 lines 0 comments Download
M ui/base/keycodes/keyboard_code_conversion_x.h View 1 chunk +0 lines, -1 line 0 comments Download
M ui/views/widget/native_widget_aura.cc View 3 chunks +5 lines, -6 lines 0 comments Download

Messages

Total messages: 1 (0 generated)
Ben Goodger (Google)
9 years ago (2011-12-06 21:27:04 UTC) #1

          

Powered by Google App Engine
This is Rietveld 408576698