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

Issue 6688049: New InputMethod api for Views. (Closed)

Created:
9 years, 9 months ago by James Su
Modified:
9 years, 7 months ago
CC:
chromium-reviews
Visibility:
Public.

Description

New InputMethod api for Views. This CL adds: 1. Interfaces: InputMethod, InputMethodDelegate, TextInputClient. 2. InputMethodGtk: an InputMethod implementation based on GtkIMContext. 3. MockInputMethod: a mock InputMethod implementation for unit tests. BUG=75003 TEST=none Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=80076

Patch Set 1 #

Patch Set 2 : Update. #

Patch Set 3 : Add bool InputMethod::IsActive(). #

Patch Set 4 : Add InputMethodWin. #

Total comments: 26

Patch Set 5 : Update. #

Total comments: 4

Patch Set 6 : Update according to review feedbacks. #

Total comments: 12

Patch Set 7 : Make sure we can always generate correct character events. #

Patch Set 8 : Address review feedbacks. #

Total comments: 16

Patch Set 9 : Address review feedback and rebase. #

Patch Set 10 : Update comment. #

Patch Set 11 : Add OnFocusIn() and OnFocusOut() to InputMethod interface. #

Patch Set 12 : Rebase. #

Patch Set 13 : Add an OWNERS file. #

Total comments: 16

Patch Set 14 : Update. #

Patch Set 15 : Rebase. #

Total comments: 14

Patch Set 16 : Rename OnFocusIn/OnFocusOut to OnFocus/OnBlur. #

Patch Set 17 : Update comment to clarify the behavior of some methods. #

Patch Set 18 : Rename GetView() to GetOwnerViewOfTextInputClient() to avoid name collision. #

Patch Set 19 : Don't dispatch the character when focus was changed by the key event. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1746 lines, -1 line) Patch
A views/ime/OWNERS View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +1 line, -0 lines 0 comments Download
A views/ime/input_method.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +109 lines, -0 lines 0 comments Download
A views/ime/input_method_base.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +106 lines, -0 lines 0 comments Download
A views/ime/input_method_base.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +117 lines, -0 lines 0 comments Download
A views/ime/input_method_delegate.h View 1 chunk +29 lines, -0 lines 0 comments Download
A views/ime/input_method_gtk.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +121 lines, -0 lines 0 comments Download
A views/ime/input_method_gtk.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +462 lines, -0 lines 0 comments Download
A views/ime/input_method_win.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +95 lines, -0 lines 0 comments Download
A views/ime/input_method_win.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +250 lines, -0 lines 0 comments Download
A views/ime/mock_input_method.h View 1 2 3 4 5 1 chunk +83 lines, -0 lines 0 comments Download
A views/ime/mock_input_method.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +154 lines, -0 lines 0 comments Download
A views/ime/text_input_client.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +126 lines, -0 lines 0 comments Download
M views/view.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 chunks +11 lines, -0 lines 0 comments Download
M views/view.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +9 lines, -0 lines 0 comments Download
M views/views.gyp View 1 2 3 4 5 6 7 8 4 chunks +17 lines, -1 line 0 comments Download
M views/widget/widget.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +8 lines, -0 lines 0 comments Download
M views/widget/widget_gtk.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +26 lines, -0 lines 0 comments Download
M views/widget/widget_win.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +22 lines, -0 lines 0 comments Download

Messages

Total messages: 30 (0 generated)
James Su
Hi, It's the fifth CL of the new Views input method API. It depends on ...
9 years, 9 months ago (2011-03-19 01:18:09 UTC) #1
oshima
http://codereview.chromium.org/6688049/diff/5012/views/ime/input_method_gtk.cc File views/ime/input_method_gtk.cc (right): http://codereview.chromium.org/6688049/diff/5012/views/ime/input_method_gtk.cc#newcode67 views/ime/input_method_gtk.cc:67: delegate_ = delegate; can delegate be NULL? DCHECK if ...
9 years, 9 months ago (2011-03-21 20:30:56 UTC) #2
James Su
http://codereview.chromium.org/6688049/diff/5012/views/ime/input_method_gtk.cc File views/ime/input_method_gtk.cc (right): http://codereview.chromium.org/6688049/diff/5012/views/ime/input_method_gtk.cc#newcode67 views/ime/input_method_gtk.cc:67: delegate_ = delegate; On 2011/03/21 20:30:56, oshima wrote: > ...
9 years, 9 months ago (2011-03-21 21:21:16 UTC) #3
oshima
http://codereview.chromium.org/6688049/diff/5012/views/ime/text_input_client.h File views/ime/text_input_client.h (right): http://codereview.chromium.org/6688049/diff/5012/views/ime/text_input_client.h#newcode70 views/ime/text_input_client.h:70: virtual bool HasComposition() = 0; On 2011/03/21 21:21:16, James ...
9 years, 9 months ago (2011-03-22 03:35:00 UTC) #4
James Su
I added InputMethodBase and renamed Composition in TextInputClient to CompositionText. http://codereview.chromium.org/6688049/diff/5012/views/ime/text_input_client.h File views/ime/text_input_client.h (right): http://codereview.chromium.org/6688049/diff/5012/views/ime/text_input_client.h#newcode70 ...
9 years, 9 months ago (2011-03-22 08:39:35 UTC) #5
Ben Goodger (Google)
http://codereview.chromium.org/6688049/diff/12001/views/widget/widget.h File views/widget/widget.h (right): http://codereview.chromium.org/6688049/diff/12001/views/widget/widget.h#newcode98 views/widget/widget.h:98: static bool ConvertRect(const Widget* from, source/target http://codereview.chromium.org/6688049/diff/12001/views/widget/widget.h#newcode271 views/widget/widget.h:271: NativeWidget* ...
9 years, 9 months ago (2011-03-22 20:45:14 UTC) #6
oshima
LGTM on my bits. Consider renaming IsClientSupportTextInput, but not mandatory. Make sure you get OK ...
9 years, 9 months ago (2011-03-22 22:35:51 UTC) #7
James Su
Hi, I updated the CL according to your feedbacks. Please kindly review it again. Best ...
9 years, 9 months ago (2011-03-22 23:08:47 UTC) #8
Peng
http://codereview.chromium.org/6688049/diff/13004/views/ime/input_method_gtk.cc File views/ime/input_method_gtk.cc (right): http://codereview.chromium.org/6688049/diff/13004/views/ime/input_method_gtk.cc#newcode294 views/ime/input_method_gtk.cc:294: // focused text input client by calling TextInputClient::InsertChar(). Should ...
9 years, 9 months ago (2011-03-24 03:49:02 UTC) #9
James Su
http://codereview.chromium.org/6688049/diff/13004/views/ime/input_method_gtk.cc File views/ime/input_method_gtk.cc (right): http://codereview.chromium.org/6688049/diff/13004/views/ime/input_method_gtk.cc#newcode294 views/ime/input_method_gtk.cc:294: // focused text input client by calling TextInputClient::InsertChar(). On ...
9 years, 9 months ago (2011-03-24 18:01:35 UTC) #10
Peng
http://codereview.chromium.org/6688049/diff/13004/views/ime/input_method_gtk.cc File views/ime/input_method_gtk.cc (right): http://codereview.chromium.org/6688049/diff/13004/views/ime/input_method_gtk.cc#newcode294 views/ime/input_method_gtk.cc:294: // focused text input client by calling TextInputClient::InsertChar(). On ...
9 years, 9 months ago (2011-03-24 18:39:03 UTC) #11
James Su
http://codereview.chromium.org/6688049/diff/13004/views/ime/input_method_gtk.cc File views/ime/input_method_gtk.cc (right): http://codereview.chromium.org/6688049/diff/13004/views/ime/input_method_gtk.cc#newcode294 views/ime/input_method_gtk.cc:294: // focused text input client by calling TextInputClient::InsertChar(). On ...
9 years, 9 months ago (2011-03-24 18:56:28 UTC) #12
Peng
http://codereview.chromium.org/6688049/diff/13004/views/ime/input_method_gtk.cc File views/ime/input_method_gtk.cc (right): http://codereview.chromium.org/6688049/diff/13004/views/ime/input_method_gtk.cc#newcode294 views/ime/input_method_gtk.cc:294: // focused text input client by calling TextInputClient::InsertChar(). On ...
9 years, 9 months ago (2011-03-24 19:25:08 UTC) #13
James Su
http://codereview.chromium.org/6688049/diff/13004/views/ime/input_method_gtk.cc File views/ime/input_method_gtk.cc (right): http://codereview.chromium.org/6688049/diff/13004/views/ime/input_method_gtk.cc#newcode294 views/ime/input_method_gtk.cc:294: // focused text input client by calling TextInputClient::InsertChar(). On ...
9 years, 9 months ago (2011-03-24 19:48:49 UTC) #14
Peng
http://codereview.chromium.org/6688049/diff/13004/views/ime/input_method_gtk.cc File views/ime/input_method_gtk.cc (right): http://codereview.chromium.org/6688049/diff/13004/views/ime/input_method_gtk.cc#newcode161 views/ime/input_method_gtk.cc:161: if (key.type() == ui::ET_KEY_PRESSED && !filtered) I mean, if ...
9 years, 9 months ago (2011-03-24 20:26:48 UTC) #15
James Su
http://codereview.chromium.org/6688049/diff/13004/views/ime/input_method_gtk.cc File views/ime/input_method_gtk.cc (right): http://codereview.chromium.org/6688049/diff/13004/views/ime/input_method_gtk.cc#newcode294 views/ime/input_method_gtk.cc:294: // focused text input client by calling TextInputClient::InsertChar(). On ...
9 years, 9 months ago (2011-03-24 21:01:23 UTC) #16
Peng
http://codereview.chromium.org/6688049/diff/28001/views/ime/input_method.h File views/ime/input_method.h (right): http://codereview.chromium.org/6688049/diff/28001/views/ime/input_method.h#newcode51 views/ime/input_method.h:51: virtual void OnFocusOut() = 0; It is better to ...
9 years, 9 months ago (2011-03-29 19:12:19 UTC) #17
James Su
http://codereview.chromium.org/6688049/diff/28001/views/ime/input_method.h File views/ime/input_method.h (right): http://codereview.chromium.org/6688049/diff/28001/views/ime/input_method.h#newcode51 views/ime/input_method.h:51: virtual void OnFocusOut() = 0; On 2011/03/29 19:12:19, Peng ...
9 years, 9 months ago (2011-03-29 19:39:15 UTC) #18
Peng
http://codereview.chromium.org/6688049/diff/28001/views/ime/input_method.h File views/ime/input_method.h (right): http://codereview.chromium.org/6688049/diff/28001/views/ime/input_method.h#newcode51 views/ime/input_method.h:51: virtual void OnFocusOut() = 0; Your suggestion can work. ...
9 years, 9 months ago (2011-03-29 19:50:46 UTC) #19
James Su
http://codereview.chromium.org/6688049/diff/28001/views/ime/input_method.h File views/ime/input_method.h (right): http://codereview.chromium.org/6688049/diff/28001/views/ime/input_method.h#newcode51 views/ime/input_method.h:51: virtual void OnFocusOut() = 0; Let's add it later ...
9 years, 9 months ago (2011-03-29 22:32:38 UTC) #20
Peng
http://codereview.chromium.org/6688049/diff/28001/views/ime/input_method.h File views/ime/input_method.h (right): http://codereview.chromium.org/6688049/diff/28001/views/ime/input_method.h#newcode51 views/ime/input_method.h:51: virtual void OnFocusOut() = 0; Do you mean we ...
9 years, 9 months ago (2011-03-29 22:47:05 UTC) #21
James Su
http://codereview.chromium.org/6688049/diff/28001/views/ime/input_method.h File views/ime/input_method.h (right): http://codereview.chromium.org/6688049/diff/28001/views/ime/input_method.h#newcode51 views/ime/input_method.h:51: virtual void OnFocusOut() = 0; On 2011/03/29 22:47:05, Peng ...
9 years, 9 months ago (2011-03-29 23:13:13 UTC) #22
Peng
http://codereview.chromium.org/6688049/diff/19009/views/ime/input_method.h File views/ime/input_method.h (right): http://codereview.chromium.org/6688049/diff/19009/views/ime/input_method.h#newcode48 views/ime/input_method.h:48: virtual void OnFocusIn() = 0; Maybe rename to OnFocus() ...
9 years, 8 months ago (2011-03-30 18:41:35 UTC) #23
James Su
http://codereview.chromium.org/6688049/diff/19009/views/ime/input_method.h File views/ime/input_method.h (right): http://codereview.chromium.org/6688049/diff/19009/views/ime/input_method.h#newcode48 views/ime/input_method.h:48: virtual void OnFocusIn() = 0; On 2011/03/30 18:41:35, Peng ...
9 years, 8 months ago (2011-03-30 19:44:22 UTC) #24
Peng
http://codereview.chromium.org/6688049/diff/28001/views/ime/input_method.h File views/ime/input_method.h (right): http://codereview.chromium.org/6688049/diff/28001/views/ime/input_method.h#newcode51 views/ime/input_method.h:51: virtual void OnFocusOut() = 0; I think it is ...
9 years, 8 months ago (2011-03-30 21:32:37 UTC) #25
James Su
http://codereview.chromium.org/6688049/diff/28001/views/ime/input_method.h File views/ime/input_method.h (right): http://codereview.chromium.org/6688049/diff/28001/views/ime/input_method.h#newcode51 views/ime/input_method.h:51: virtual void OnFocusOut() = 0; On 2011/03/30 21:32:37, Peng ...
9 years, 8 months ago (2011-03-30 21:44:00 UTC) #26
Peng
http://codereview.chromium.org/6688049/diff/19009/views/ime/input_method.h File views/ime/input_method.h (right): http://codereview.chromium.org/6688049/diff/19009/views/ime/input_method.h#newcode53 views/ime/input_method.h:53: virtual void OnFocusOut() = 0; I think that is ...
9 years, 8 months ago (2011-03-30 23:56:33 UTC) #27
James Su
http://codereview.chromium.org/6688049/diff/19009/views/ime/input_method.h File views/ime/input_method.h (right): http://codereview.chromium.org/6688049/diff/19009/views/ime/input_method.h#newcode53 views/ime/input_method.h:53: virtual void OnFocusOut() = 0; On 2011/03/30 23:56:33, Peng ...
9 years, 8 months ago (2011-03-31 00:08:08 UTC) #28
Peng
Most LGTM. But I am not very qualified for reviewing some code for Window. On ...
9 years, 8 months ago (2011-03-31 19:14:06 UTC) #29
Ben Goodger (Google)
9 years, 8 months ago (2011-03-31 21:07:24 UTC) #30
LGTM for me on the View integration bits.

Powered by Google App Engine
This is Rietveld 408576698