New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.
Starred by 16 users
link

Issue 362698: ozone: implement input method support on ChromeOS

Reported by spang@chromium.org, Apr 11 2014 Project Member

Issue description

We need working IME support for the

GYP_DEFINES="chromeos=1 use_ozone=1"

build.
 

Comment 1 by yukawa@chromium.org, Apr 12 2014

Labels: Cr-UI-Input-Text-IME
Summary: ozone: implement input method support on ChromeOS (was: ozone: implement input method support on Chromemos)

Comment 2 by benhenry@chromium.org, Apr 29 2014

Labels: Infra

Comment 3 by xiaowenx@chromium.org, Apr 29 2014

Owner: pcovell@chromium.org
Status: Assigned
[triage] pcovell: can you triage further?

Comment 4 by pcovell@chromium.org, Apr 30 2014

Cc: joshwoodward@chromium.org
Owner: zelidrag@chromium.org
zel, can someone help get IME support working for ozone --> freon?

Comment 5 by joshwoodward@chromium.org, May 2 2014

Cc: zork@chromium.org nona@chromium.org
@zork or @nona - who is the IME owner these days?

Comment 6 by zork@chromium.org, May 5 2014

Cc: yukishiino@chromium.org
I believe @yukishiino is the current owner.

Comment 7 by yukishiino@chromium.org, May 7 2014

Cc: shuchen@chromium.org
@shuchen is actively working on IME support for CrOS.

Comment 8 by shuchen@chromium.org, May 8 2014

May I understand the timeline for ozone? I could take this if it's only related to changes for Extension IME framework on CrOS. But I'd like to check whether it would conflict with other tasks I am owning.

Thanks,
Shu

Comment 9 by spang@chromium.org, May 22 2014

Blocking: chromium:376387

Comment 10 by rjkroege@chromium.org, Jun 9 2014

Labels: -Pri-2 Pri-1 M-39
ozone schedule has been firmed up. bug updated appropriately.

Comment 11 by shuchen@chromium.org, Jul 24 2014

Cc: zelidrag@chromium.org
Owner: shuchen@chromium.org
I will take the effort.

Comment 12 by shuchen@chromium.org, Jul 25 2014

Cc: rjkroege@chromium.org satorux@chromium.org sadrul@chromium.org suzhe@chromium.org kpschoedel@chromium.org spang@chromium.org kevers@chromium.org
 Issue 367732  has been merged into this issue.

Comment 13 by shuchen@chromium.org, Jul 25 2014

Solution: use libxkbcommon in Ozone evdev and Ozone would have an interface to let Chrome control its internal key mapping.
libxkbcommon related code sample can be found at https://github.com/01org/ozone-wayland.

Please refer to  crbug.com/367732 .

Comment 14 by spang@chromium.org, Aug 7 2014

Labels: -Infra freon

Comment 15 Deleted

Comment 16 by bugdroid1@chromium.org, Aug 13 2014

Project Member

Comment 17 by bugdroid1@chromium.org, Aug 20 2014

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2299720da3712c4693c33e5e7adcc91b93444803

commit 2299720da3712c4693c33e5e7adcc91b93444803
Author: spang@chromium.org <spang@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>
Date: Wed Aug 20 01:57:42 2014

Add libxkbcommon-dev to install-build-deps

We'll use this under ChromeOS ozone/freon builds for keyboard layout
support.

BUG= 362698 
TEST=ran install-build-deps.sh on trusty

Review URL: https://codereview.chromium.org/488833003

Cr-Commit-Position: refs/heads/master@{#290727}
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@290727 0039d316-1c4b-4281-b951-d872f2087c98

Comment 18 by bugdroid1@chromium.org, Aug 20 2014

Project Member
------------------------------------------------------------------
r290727 | spang@chromium.org | 2014-08-20T01:57:42.180994Z

Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/build/install-build-deps.sh?r1=290727&r2=290726&pathrev=290727

Add libxkbcommon-dev to install-build-deps

We'll use this under ChromeOS ozone/freon builds for keyboard layout
support.

BUG= 362698 
TEST=ran install-build-deps.sh on trusty

Review URL: https://codereview.chromium.org/488833003
-----------------------------------------------------------------

Comment 19 by bugdroid1@chromium.org, Aug 22 2014

Project Member
Project: chromiumos/overlays/chromiumos-overlay
Branch : master
Author : Michael Spang <spang@chromium.org>
Commit : 89024fea3a3be58455c59c8cd162134749cbd7e9

Code-Review  0 : Alex Sakhartchouk, Michael Spang, chrome-internal-fetch
Code-Review  +1: Kevin Schoedel
Code-Review  +2: Shu Chen
Commit-Queue 0 : Alex Sakhartchouk, Kevin Schoedel, Shu Chen, chrome-internal-fetch
Commit-Queue +1: Michael Spang
Verified     0 : Alex Sakhartchouk, Kevin Schoedel, Shu Chen, chrome-internal-fetch
Verified     +1: Michael Spang
Change-Id      : Ia03664ae20a12e60d65527b8885b128d8e8b47a7
Reviewed-at    : https://chromium-review.googlesource.com/213144

chromeos-chrome: Introduce USE=xkbcommon

We'll use this flag to pull in keyboard layout support using
libxkbcommon under freon/ozone.

BUG= chromium:362698 
TEST=emerge-link_freon libxkbcommon

chromeos-base/chromeos-chrome/chromeos-chrome-9999.ebuild

Comment 20 by bugdroid1@chromium.org, Aug 22 2014

Project Member
Project: chromiumos/overlays/board-overlays
Branch : master
Author : Michael Spang <spang@chromium.org>
Commit : 79a84d02014916cfd6cf73047264634c65b9d9cf

Code-Review  0 : Michael Spang, chrome-internal-fetch
Code-Review  +2: Alex Sakhartchouk, Shu Chen
Commit-Queue 0 : Alex Sakhartchouk, Shu Chen, chrome-internal-fetch
Commit-Queue +1: Michael Spang
Verified     0 : Alex Sakhartchouk, Shu Chen, chrome-internal-fetch
Verified     +1: Michael Spang
Change-Id      : Iea0a22b898682a0d667522c8c306e0b199bf3ee0
Reviewed-at    : https://chromium-review.googlesource.com/213220

link_freon: Enable USE=xkbcommon

We'll use this flag to pull in keyboard layout support using
libxkbcommon under freon/ozone.

BUG= chromium:362698 
TEST=build_packages --board link_freon
CQ-DEPEND=CL:213144

overlay-variant-link-freon/make.conf

Comment 21 by alexst@chromium.org, Aug 26 2014

xkbcommon should now be pulled in, but just as an FYI, it may need to be gardened if it has bugs.

Comment 22 by bugdroid1@chromium.org, Aug 27 2014

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/11b8617a1b0c934d741aba34cb3c139a9fbee272

commit 11b8617a1b0c934d741aba34cb3c139a9fbee272
Author: kpschoedel <kpschoedel@chromium.org>
Date: Wed Aug 27 22:39:42 2014

ozone: evdev: Add DOM3 code string to Ozone evdev key events.

Have ui::KeycodeConverter::NativeKeycode use evdev codes when
compiled appropriately.

TEST=Manually tested on link_freon.
BUG= 362698 

Review URL: https://codereview.chromium.org/488123004

Cr-Commit-Position: refs/heads/master@{#292251}

[modify] https://chromium.googlesource.com/chromium/src.git/+/11b8617a1b0c934d741aba34cb3c139a9fbee272/ui/events/ozone/evdev/key_event_converter_evdev.cc
[modify] https://chromium.googlesource.com/chromium/src.git/+/11b8617a1b0c934d741aba34cb3c139a9fbee272/ui/events/ozone/events_ozone.gyp

Comment 23 by shuchen@chromium.org, Sep 28 2014

Labels: -M-39 MovedFrom-39 M-40

Comment 24 by spang@chromium.org, Oct 14 2014

ping.. any update?

Comment 25 by shuchen@chromium.org, Oct 15 2014

Sorry, I was planning to write a simple design doc a couple of weeks ago, but got distracted by other tasks.

I will make it by early next week. SG?

Comment 26 by alexst@chromium.org, Oct 16 2014

@shuchen, does your schedule look reasonably open to work on this full time? Can we help?

I ask because this has been a Pri-1 bug for a while and it is a release blocker, we really do need this done for M40 for ozone-freon.

If you can't dedicate 100% of your attention to this bug, please let me know so we can take it off your plate or break it up into sub-bugs to make progress, we need to move on this quickly.

Comment 27 by shuchen@chromium.org, Oct 17 2014

Cc: fengyuan@chromium.org

Comment 28 by shuchen@chromium.org, Oct 17 2014

Cc: xiangye@chromium.org

Comment 29 by shuchen@chromium.org, Oct 17 2014

Cc: wuyingbing@chromium.org zhangchi@chromium.org

Comment 30 by shuchen@chromium.org, Oct 17 2014

Re #26, alexst@, there is only one thing left to resolve this bug, which is to let IMF control the key mappings (XKB symbol id) in Ozone.
We've planned to leverage libxkbcommon APIs. spang@ has already linked libxkbcommon to Ozone (IIRC).
So the major implementation would be adding interfaces from Ozone to IMF.

Given 3 weeks to branch point, I think we can handle it.
The plan is fengyuan@ will share some burden from me for implementation, and I will focus on the interface design.

How does the plan sound?

Btw, why this is a release blocker?
Currently US keyboard and other input method based on US-layout (e.g. M17n keyboards, CJK, etc.) are working on freon.
Are we going to launch some Freon devices in M40?

Comment 32 by shuchen@chromium.org, Oct 17 2014

alexst@/kpschoedel@, can you please help for the TBDs in the design doc? Thanks!

Comment 33 by alexst@chromium.org, Oct 18 2014

Cc: alexst@chromium.org
@shuchen Thank you for the design doc! Reading it now. re:devices, the plan is to switch Pixel to freon for M40.

Comment 34 by shuchen@chromium.org, Oct 27 2014

The confirm the plan:
 - fengyuan@ will own the missing piece of IMF to call Ozone for switching key mappings.
 - kpschoedel@ will own the Ozone implementation for integration of XKB common lib.
 - ETA: M40 cut date: 11/7.

Please let me know if it's out of your expectation.

Comment 35 by kpschoedel@chromium.org, Nov 4 2014

Blockedon: chromium:430191

Comment 36 by kpschoedel@chromium.org, Nov 4 2014

Blockedon: chromium:430194

Comment 37 by shuchen@chromium.org, Nov 11 2014

Labels: -M-40 M-41 MovedFrom-40
We're targeting to complete XKB@Ozone in M41.

Comment 38 by shuchen@chromium.org, Nov 12 2014

Owner: fengyuan@chromium.org
Reassigning this to fengyuan@ who is working on the implementation in IMF to call Ozone for switching xkb key mappings.

kpschoedel@, feel free to use this issue for XKB implementation inside Ozone.

Comment 39 by rohi...@chromium.org, Nov 18 2014

Cc: rohi...@chromium.org

Comment 40 by alexst@chromium.org, Dec 2 2014

 Issue 438378  has been merged into this issue.

Comment 41 by kpschoedel@chromium.org, Dec 11 2014

Blocking: chromium:440943

Comment 42 by jorgelo@chromium.org, Dec 11 2014

alexst@: you realize plenty of people use non-US layouts? Like, the people that live outside of the US?

Comment 43 by palmer@chromium.org, Dec 11 2014

"Btw, why this is a release blocker?"

Because this is the world-wide web. It's a web for the entire world. :)

Comment 44 by jln@google.com, Dec 11 2014

Or even people who live inside the US for that matter.

It s really weird to break DEV channel this bad and not consider it a P0. I took me a while to figure out that the keyboard indicator was lying to me and that I had to enter my password using a different keyboard layout.

Comment 45 by alexst@chromium.org, Dec 11 2014

Cc: w...@chromium.org marc...@chromium.org
jorgelo, the team has been working on this very hard for a very long time, CL's to fix this are in review, and it's something we hoped to have finished a long time ago (and pushed back already), but as is the case with every major refactor, especially ones that replace an entire graphics and input systems, sometimes things take longer than you anticipate for a variety of reason. I understand your frustration, and I apologize, but contrary to your rather sarcastic comment, we aren't a bunch of world hating thugs, we are your colleagues who are pouring their hearts into a product, trying to do things as quickly as possible, just like you would.

I am escalating this to P0, but it isn't like we weren't actively trying to wrap this up already.

Once again, I apologize, we are working as hard as we can, please stay tuned.

https://codereview.chromium.org/742103002/
https://codereview.chromium.org/786813004/
https://codereview.chromium.org/778503002/

Comment 46 by alexst@chromium.org, Dec 11 2014

Labels: -Pri-1 Pri-0

Comment 47 by bugdroid1@chromium.org, Dec 18 2014

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e9a82b8201ec476695935926c4c9dc36adc5a03c

commit e9a82b8201ec476695935926c4c9dc36adc5a03c
Author: kpschoedel <kpschoedel@chromium.org>
Date: Thu Dec 18 19:14:38 2014

XKB RMLVO splitting.

Layouts with a variant part (e.g. "us(altgr-intl)") could not be
selected.

BUG= 362698 
TEST=manual on link_freon

Review URL: https://codereview.chromium.org/813893002

Cr-Commit-Position: refs/heads/master@{#309050}

[modify] http://crrev.com/e9a82b8201ec476695935926c4c9dc36adc5a03c/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.cc

Comment 48 by alexst@chromium.org, Dec 18 2014

Status: Fixed

Comment 49 by mu...@chromium.org, Jan 21 2015

Cc: mu...@chromium.org tturchetto@chromium.org

Comment 50 by tturchetto@chromium.org, Jan 21 2015

Cc: -tturchetto@chromium.org dhadd...@chromium.org

Comment 51 by dhadd...@chromium.org, Jan 23 2015

Can I get some information and context about this bug and how to verify this fix? "manual on link_freon" doesn't really tell me much :)

Comment 52 by mu...@chromium.org, Jan 24 2015

Status: Assigned

Comment 53 by shuchen@chromium.org, Jan 25 2015

Status: Fixed
To verify this bug, please install link_freon image and try some typical input methods:
1) US keyboard
2) French keyboard
3) Russian keyboard
3) Japanese input method
4) Chinese Pinyin input method
5) Hindi Devanagari phonetic keyboard

If those input methods work fine as they do in link image, then this bug can be closed.

Comment 54 by rookrishna@chromium.org, Jan 27 2015

Status: Assigned
Tested on Link_freon build ChromeOS 6680.17.0 / 41.0.2272.32

The Japanese input keyboard is not working

Comment 55 by shuchen@chromium.org, Jan 28 2015

Status: Fixed
If Japanese input problem is the only problem, most likely it is not due to the IMF support for Ozone, and we should use a separated bug to track that.

Does French keyboard works fine?

Comment 56 by shuchen@chromium.org, Jan 28 2015

 Issue 452673  is tracking the Japanese keyboard issue.

Comment 57 Deleted

Comment 58 by rookrishna@chromium.org, Jan 28 2015

@shuchen French keyboard is working fine. 

  Issue 452673  is for the keyboard not working with the change in input method to any input method and is not specific to Japanese keyboard

Should we open a seperate bug to track the Japanese keyboard ?

Comment 59 by spang@chromium.org, Jan 28 2015

Status: Verified
Please open new bugs for any IME issues in current builds. This is the feature bug and is completed - we cannot track every possible issue in the feature bug.

Comment 60 by bugdroid1@chromium.org, Mar 17 2015

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f991e90c57eeed424830f5eac357a5557e11a74b

commit f991e90c57eeed424830f5eac357a5557e11a74b
Author: wtc <wtc@chromium.org>
Date: Fri Mar 13 22:42:17 2015

Remove Chrome OS-only sources only if the OS is Chrome OS.

If the OS is not Chrome OS, those sources are automatically removed
because their file pathnames contain "chromeos". So we can't remove
them from 'sources' again -- GN treats that as an error.

Re-enable the Chrome OS input method tests for use_ozone because
 bug 362698  has been fixed.

R=kpschoedel@chromium.org,sky@chromium.org
BUG= 354036 , 362698 

Review URL: https://codereview.chromium.org/1003853005

Cr-Commit-Position: refs/heads/master@{#320596}

[modify] http://crrev.com/f991e90c57eeed424830f5eac357a5557e11a74b/chrome/chrome_tests.gypi
[modify] http://crrev.com/f991e90c57eeed424830f5eac357a5557e11a74b/chrome/chrome_tests_unit.gypi
[modify] http://crrev.com/f991e90c57eeed424830f5eac357a5557e11a74b/chrome/test/BUILD.gn

Sign in to add a comment