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

Issue 150206: Implement the NSTextInput protocol.... (Closed)

Created:
11 years, 5 months ago by Hironori Bono
Modified:
11 years, 4 months ago
CC:
chromium-reviews_googlegroups.com, John Grabowski, darin (slow to review), brettw, Ben Goodger (Google)
Visibility:
Public.

Description

Implement the NSTextInput protocol. This change implements the NSTextInput protocol to integrate dead-keys and IME support into Mac Chromium. Same as Linux, to improve compatibility with Windows Chrome, this change emulates IPC messages sent on Windows when we input characters to fix Issue 11952 and Issue 11981. Even though I notice we need more work for fixing edge cases (e.g. disabling IMEs on a password input) also on Mac, it is the good starting point. (Supporting edge-cases requires complicated code and it makes hard to review.) BUG=11952 "IME support is not implemented" BUG=11981 "Deadkeys do not work" BUG=16393 "Mac: Not able to insert any letter using "Special Characters" pallet" TEST=Open a web page which contains an <input> form (e.g. <http://www.google.com/>), type a '[{' key and an 'A' key on a Canadian-French keyboard, and see a Latin character "U+00E2" is displayed in the <input> form. TEST=Open a web page which contains an <input> form (e.g. <http://www.google.com/>), enable an Chinese Pinyin IME, type a 'W' key, type an 'O' key, and see a Chinese character is displayed in the <input> form. TEST=Open a web page which contains a <textarea> form, type a return key, and see a new line is inserted. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=22262

Patch Set 1 #

Patch Set 2 : '' #

Patch Set 3 : '' #

Total comments: 16

Patch Set 4 : '' #

Patch Set 5 : '' #

Patch Set 6 : '' #

Patch Set 7 : '' #

Patch Set 8 : '' #

Patch Set 9 : '' #

Total comments: 11

Patch Set 10 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+362 lines, -18 lines) Patch
M chrome/browser/renderer_host/render_widget_host_view_mac.h View 1 2 3 4 5 6 7 8 9 2 chunks +45 lines, -1 line 0 comments Download
M chrome/browser/renderer_host/render_widget_host_view_mac.mm View 1 2 3 4 5 6 7 8 9 5 chunks +258 lines, -1 line 0 comments Download
M chrome/common/native_web_keyboard_event.h View 1 2 3 4 5 6 7 8 9 1 chunk +3 lines, -0 lines 0 comments Download
MM chrome/common/native_web_keyboard_event_mac.mm View 1 2 3 4 5 6 7 8 9 1 chunk +9 lines, -0 lines 0 comments Download
MM webkit/api/public/WebInputEvent.h View 8 9 1 chunk +23 lines, -12 lines 0 comments Download
MM webkit/api/public/mac/WebInputEventFactory.h View 1 2 3 4 5 6 7 8 9 3 chunks +4 lines, -3 lines 0 comments Download
M webkit/api/src/mac/WebInputEventFactory.mm View 1 2 3 4 5 6 7 8 9 2 chunks +20 lines, -1 line 0 comments Download

Messages

Total messages: 19 (0 generated)
Hironori Bono
Even though this code works with all IMEs and keyboards installed on Leopard, I'm wondering ...
11 years, 5 months ago (2009-07-02 07:19:04 UTC) #1
Hironori Bono
Thank you for your review and comments. Is it possible to review this updated one ...
11 years, 5 months ago (2009-07-06 09:36:53 UTC) #2
Hironori Bono
darin, Is it possible to review the WebKit API part of this change? (It is ...
11 years, 5 months ago (2009-07-14 02:55:52 UTC) #3
Hironori Bono
ping. On 2009/07/14 02:55:52, hbono wrote: > darin, > > Is it possible to review ...
11 years, 5 months ago (2009-07-17 11:06:49 UTC) #4
Avi (use Gerrit)
Darin has yet to comment, and while I'm mostly OK with your scheme, you really ...
11 years, 5 months ago (2009-07-17 13:20:31 UTC) #5
darin (slow to review)
WebKit API changes look good to me. Sorry for the delayed response.
11 years, 5 months ago (2009-07-17 17:39:06 UTC) #6
jeremy
Darin: Sorry if you've answered this already, but how bad do you think a sync ...
11 years, 5 months ago (2009-07-17 17:53:30 UTC) #7
darin (slow to review)
That would probably be very bad. Today we send overlapping keystroke events to the renderer. ...
11 years, 5 months ago (2009-07-17 19:51:34 UTC) #8
Hironori Bono
Avi, Thank you for your comments and sorry for my very slow response. (I needed ...
11 years, 5 months ago (2009-07-22 05:40:18 UTC) #9
Avi (use Gerrit)
What I mean is that there are comments (//, /*) scattered through the code (mostly ...
11 years, 5 months ago (2009-07-22 14:45:43 UTC) #10
Hironori Bono
Hi Avi, Thank you for your explanation. Before removing obsoleted comments, I added a comment ...
11 years, 5 months ago (2009-07-23 10:57:03 UTC) #11
Hironori Bono
ping. On 2009/07/23 10:57:03, hbono wrote: > Hi Avi, > > Thank you for your ...
11 years, 4 months ago (2009-07-29 10:22:18 UTC) #12
Avi (use Gerrit)
You've already eliminated the use of KeyDown events in favor of splitting them into RawKeyDown ...
11 years, 4 months ago (2009-07-29 14:49:09 UTC) #13
Hironori Bono
Thank you so much for your explanation. It totally makes sense. Since I was focused ...
11 years, 4 months ago (2009-07-30 10:24:14 UTC) #14
Avi (use Gerrit)
Just some tweaking of the comments here and there for a bit of readability. Let ...
11 years, 4 months ago (2009-07-30 16:56:31 UTC) #15
Hironori Bono
Hi Avi, Thank you for your review and comments. I have updated this change to ...
11 years, 4 months ago (2009-07-31 12:03:29 UTC) #16
Avi (use Gerrit)
Awesome. Let's get this landed. Do you have commit privileges?
11 years, 4 months ago (2009-07-31 13:38:26 UTC) #17
Hironori Bono
Hi Avi, Thank you for your review. Your comments are definitely helpful for improving this ...
11 years, 4 months ago (2009-08-03 08:52:05 UTC) #18
brettw
11 years, 4 months ago (2009-08-24 17:00:25 UTC) #19
On Mon, Aug 24, 2009 at 9:56 AM, Matt Tolton<matt@tolton.com> wrote:
> hbono,
>
> Out of curiosity, why is it ok for you to submit a change like
> http://codereview.chromium.org/150206 apparently without a single line
> of test code, but it's not ok for James to do so?

The reviewer for that patch should have requested a unit test. It's
usually easier to see this need in other's patches than your own,
which is why all reviewers need to be on the lookout for this.

That doesn't affect this patch at all, and I think the tone of the
question was very disrespectful.

Brett

Powered by Google App Engine
This is Rietveld 408576698