We should have a mean for displaying candidate list.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/dfb10e743132bac81702c2a3685f4c7c782d368f commit dfb10e743132bac81702c2a3685f4c7c782d368f Author: moshayedi <moshayedi@chromium.org> Date: Wed Feb 01 14:03:57 2017 IME for Mus: Avoid crash in InitWindowCandidateView(). This CL fixes the crash when the candidate list is created. crbug.com/684658 tracks fixing the positioning of the candidate window when the window moves. BUG= 637416 Review-Url: https://codereview.chromium.org/2651733002 Cr-Commit-Position: refs/heads/master@{#447506} [modify] https://crrev.com/dfb10e743132bac81702c2a3685f4c7c782d368f/chrome/browser/chromeos/input_method/candidate_window_controller_impl.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b69ccf6f92a78f8dc097466d8132b7ccfd000950 commit b69ccf6f92a78f8dc097466d8132b7ccfd000950 Author: moshayedi <moshayedi@chromium.org> Date: Thu Apr 27 15:31:23 2017 IME for Mus: Structs and StructTraits for IME Candidate Window. This CL adds ui.mojom.CandidateWindowProperties and ui.mojom.CandidateWindowEntry and corresponding struct traits. BUG= 637416 , 672587 Review-Url: https://codereview.chromium.org/2839243002 Cr-Commit-Position: refs/heads/master@{#467686} [modify] https://crrev.com/b69ccf6f92a78f8dc097466d8132b7ccfd000950/services/ui/public/interfaces/ime/OWNERS [modify] https://crrev.com/b69ccf6f92a78f8dc097466d8132b7ccfd000950/services/ui/public/interfaces/ime/ime.mojom [modify] https://crrev.com/b69ccf6f92a78f8dc097466d8132b7ccfd000950/services/ui/public/interfaces/ime/ime.typemap [modify] https://crrev.com/b69ccf6f92a78f8dc097466d8132b7ccfd000950/services/ui/public/interfaces/ime/ime_struct_traits.cc [modify] https://crrev.com/b69ccf6f92a78f8dc097466d8132b7ccfd000950/services/ui/public/interfaces/ime/ime_struct_traits.h [modify] https://crrev.com/b69ccf6f92a78f8dc097466d8132b7ccfd000950/services/ui/public/interfaces/ime/ime_struct_traits_unittest.cc
This is broken in --mash as well.
Issue 684658 has been merged into this issue.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/8792ef52806dd22458a5dc00e26242d4742054f9 commit 8792ef52806dd22458a5dc00e26242d4742054f9 Author: Thanh Pham <thanhph@chromium.org> Date: Thu Oct 05 03:57:38 2017 Implement IsCandidatePopUpOpen() in InputMethodMus. Client InputMethodMus needs a way to know if there's candidate pop up window which is created in different process, i.e., Chrome. We can provide SetCandidateWindowVisible() interface in ime.mojom to allow RemoteTextInputClient in Chrome process to send visible property of candidate window pop up to InputMethodMus in client process. Bug: 637416 Change-Id: I5c5785972ba90d6ec2e6ceabc9e29043ee226761 Reviewed-on: https://chromium-review.googlesource.com/680037 Reviewed-by: Tom Sepez <tsepez@chromium.org> Reviewed-by: Scott Violet <sky@chromium.org> Commit-Queue: Thanh Pham <thanhph@chromium.org> Cr-Commit-Position: refs/heads/master@{#506639} [modify] https://crrev.com/8792ef52806dd22458a5dc00e26242d4742054f9/chrome/browser/chromeos/input_method/input_method_engine.cc [modify] https://crrev.com/8792ef52806dd22458a5dc00e26242d4742054f9/chrome/browser/chromeos/input_method/input_method_engine_unittest.cc [modify] https://crrev.com/8792ef52806dd22458a5dc00e26242d4742054f9/chrome/browser/ui/views/ime_driver/input_method_bridge_chromeos_unittest.cc [modify] https://crrev.com/8792ef52806dd22458a5dc00e26242d4742054f9/chrome/browser/ui/views/ime_driver/remote_text_input_client.cc [modify] https://crrev.com/8792ef52806dd22458a5dc00e26242d4742054f9/chrome/browser/ui/views/ime_driver/remote_text_input_client.h [modify] https://crrev.com/8792ef52806dd22458a5dc00e26242d4742054f9/services/ui/ime/ime_unittest.cc [modify] https://crrev.com/8792ef52806dd22458a5dc00e26242d4742054f9/services/ui/public/interfaces/ime/ime.mojom [modify] https://crrev.com/8792ef52806dd22458a5dc00e26242d4742054f9/ui/aura/mus/input_method_mus.cc [modify] https://crrev.com/8792ef52806dd22458a5dc00e26242d4742054f9/ui/aura/mus/text_input_client_impl.cc [modify] https://crrev.com/8792ef52806dd22458a5dc00e26242d4742054f9/ui/aura/mus/text_input_client_impl.h [modify] https://crrev.com/8792ef52806dd22458a5dc00e26242d4742054f9/ui/base/ime/chromeos/ime_candidate_window_handler_interface.h [modify] https://crrev.com/8792ef52806dd22458a5dc00e26242d4742054f9/ui/base/ime/chromeos/mock_ime_candidate_window_handler.cc [modify] https://crrev.com/8792ef52806dd22458a5dc00e26242d4742054f9/ui/base/ime/chromeos/mock_ime_candidate_window_handler.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6e7f2233fcac833262892e0d141811db2970fe6d commit 6e7f2233fcac833262892e0d141811db2970fe6d Author: Thanh Pham <thanhph@chromium.org> Date: Fri Oct 13 17:59:43 2017 Revert "Implement IsCandidatePopUpOpen() in InputMethodMus." This reverts commit 8792ef52806dd22458a5dc00e26242d4742054f9. Reason for revert: This CL breaks the candidate window pop up for pinyin when typing on the omnibox because RemoteTextInputClient re-registered a CandidateWindowHandler in its constructor. We can create a different handler in IME::Bridge for RemoteTextInputClient in a future CL. Original change's description: > Implement IsCandidatePopUpOpen() in InputMethodMus. > > Client InputMethodMus needs a way to know if there's candidate pop up > window which is created in different process, i.e., Chrome. We can > provide SetCandidateWindowVisible() interface in ime.mojom to allow > RemoteTextInputClient in Chrome process to send visible property of > candidate window pop up to InputMethodMus in client process. > > Bug: 637416 > Change-Id: I5c5785972ba90d6ec2e6ceabc9e29043ee226761 > Reviewed-on: https://chromium-review.googlesource.com/680037 > Reviewed-by: Tom Sepez <tsepez@chromium.org> > Reviewed-by: Scott Violet <sky@chromium.org> > Commit-Queue: Thanh Pham <thanhph@chromium.org> > Cr-Commit-Position: refs/heads/master@{#506639} TBR=sky@chromium.org,tsepez@chromium.org,thanhph@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: 637416 Change-Id: I3689924104dda13d3b650f6ce2453e7b490f2c31 Reviewed-on: https://chromium-review.googlesource.com/717617 Reviewed-by: Scott Violet <sky@chromium.org> Commit-Queue: Thanh Pham <thanhph@chromium.org> Cr-Commit-Position: refs/heads/master@{#508753} [modify] https://crrev.com/6e7f2233fcac833262892e0d141811db2970fe6d/chrome/browser/chromeos/input_method/input_method_engine.cc [modify] https://crrev.com/6e7f2233fcac833262892e0d141811db2970fe6d/chrome/browser/chromeos/input_method/input_method_engine_unittest.cc [modify] https://crrev.com/6e7f2233fcac833262892e0d141811db2970fe6d/chrome/browser/ui/views/ime_driver/input_method_bridge_chromeos_unittest.cc [modify] https://crrev.com/6e7f2233fcac833262892e0d141811db2970fe6d/chrome/browser/ui/views/ime_driver/remote_text_input_client.cc [modify] https://crrev.com/6e7f2233fcac833262892e0d141811db2970fe6d/chrome/browser/ui/views/ime_driver/remote_text_input_client.h [modify] https://crrev.com/6e7f2233fcac833262892e0d141811db2970fe6d/services/ui/ime/ime_unittest.cc [modify] https://crrev.com/6e7f2233fcac833262892e0d141811db2970fe6d/services/ui/public/interfaces/ime/ime.mojom [modify] https://crrev.com/6e7f2233fcac833262892e0d141811db2970fe6d/ui/aura/mus/input_method_mus.cc [modify] https://crrev.com/6e7f2233fcac833262892e0d141811db2970fe6d/ui/aura/mus/text_input_client_impl.cc [modify] https://crrev.com/6e7f2233fcac833262892e0d141811db2970fe6d/ui/aura/mus/text_input_client_impl.h [modify] https://crrev.com/6e7f2233fcac833262892e0d141811db2970fe6d/ui/base/ime/chromeos/ime_candidate_window_handler_interface.h [modify] https://crrev.com/6e7f2233fcac833262892e0d141811db2970fe6d/ui/base/ime/chromeos/mock_ime_candidate_window_handler.cc [modify] https://crrev.com/6e7f2233fcac833262892e0d141811db2970fe6d/ui/base/ime/chromeos/mock_ime_candidate_window_handler.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/3a3efda772bd2a07fa66ebb9ff41ef4796739ae2 commit 3a3efda772bd2a07fa66ebb9ff41ef4796739ae2 Author: Thanh Pham <thanhph@chromium.org> Date: Wed Oct 18 20:40:23 2017 IME for Mus: Candidate list popup should be visible and move with the browser when the browser window is dragged in mash and non-mash. Candidate list popup can ask window manager to find its parent by setting the mus property WindowManager::kContainerId_InitProperty as ash::kShellWindowId_SettingBubbleContainer. This will maintain the pop up window while the browser is dragging. Bug: 637416 Change-Id: I3af237f68f6b53f6cc7d26384e2d9693bfe66212 Reviewed-on: https://chromium-review.googlesource.com/685497 Commit-Queue: Thanh Pham <thanhph@chromium.org> Reviewed-by: Scott Violet <sky@chromium.org> Cr-Commit-Position: refs/heads/master@{#509859} [modify] https://crrev.com/3a3efda772bd2a07fa66ebb9ff41ef4796739ae2/chrome/browser/chromeos/input_method/candidate_window_controller_impl.cc [modify] https://crrev.com/3a3efda772bd2a07fa66ebb9ff41ef4796739ae2/ui/chromeos/BUILD.gn [modify] https://crrev.com/3a3efda772bd2a07fa66ebb9ff41ef4796739ae2/ui/chromeos/DEPS [modify] https://crrev.com/3a3efda772bd2a07fa66ebb9ff41ef4796739ae2/ui/chromeos/ime/candidate_window_view.cc [modify] https://crrev.com/3a3efda772bd2a07fa66ebb9ff41ef4796739ae2/ui/chromeos/ime/candidate_window_view.h
Working fine in my limited test with ksv app. Feel free to reopen if there is more work that needs to be done here.
Comment 1 by rjkroege@chromium.org
, Oct 4 2016