New issue
Advanced search Search tips

Issue 642863 link

Starred by 3 users

Issue metadata

Status: Archived
Owner:
Closed: Jun 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Feature

Blocking:
issue 701068
issue 701089



Sign in to add a comment

Add Mojo interface for InputController to the input-device service

Project Member Reported by kylec...@chromium.org, Aug 31 2016

Issue description

On Chrome OS we need a way to use InputController from processes that aren't mus-ws. InputController is used to configure input-devices. This service will be used by ash, chrome and the settings app.

A new Mojo interface and the associated implementation could be added as part of //services/ui/input_devices.
 
Components: MUS
Labels: Proj-Mustash
Components: Internals>MUS
Blocking: 701089
Cc: derat@chromium.org
Labels: -Pri-3 Pri-2
I wonder if this is why the "trackpad" section doesn't appear in settings.

Status: Available (was: Untriaged)
StubInputController returns false for both HasMouse() and HasTrackpad() so I think so.

https://cs.chromium.org/chromium/src/ui/ozone/public/input_controller.cc?type=cs&q=StubInputController&sq=package:chromium&l=67
Labels: mustash-1
This is blocking on a mustash-1 issue, so I'm going to add mustash-1 here.

Comment 7 by sky@chromium.org, Mar 17 2017

Kyle, what doesn't work without this (other than the settings issue)?
It's just settings for mouse/touchpad/keyboard. Also enabling/disabling touchscreen input.
Blocking: 701068

Comment 10 by sky@chromium.org, Mar 28 2017

Labels: -mustash-1
I'm going to remove mustash-1 from this one as for casual browsing you don't need to configure the settings.

Comment 11 by sky@chromium.org, Jun 6 2017

Labels: mustash-2
Owner: sky@chromium.org
Status: Started (was: Available)
Project Member

Comment 12 by bugdroid1@chromium.org, Jun 8 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6000a30410a03f26d271a90fbfe0ba0062fb1e62

commit 6000a30410a03f26d271a90fbfe0ba0062fb1e62
Author: Scott Violet <sky@chromium.org>
Date: Thu Jun 08 19:07:27 2017

chromeos: convert InputController callbacks to be by value

This makes it easy to convert to mojo and also clarifies the values
can never be null. This also changes InputController::SetCurrentLayoutByName()
not to have a return value as no one used the return value.

BUG= 642863 
TEST=none

Change-Id: I179497837bfcb8c57581ecb6c0911cc741ea4559
Reviewed-on: https://chromium-review.googlesource.com/528004
Reviewed-by: Michael Spang <spang@chromium.org>
Reviewed-by: kylechar <kylechar@chromium.org>
Commit-Queue: Scott Violet <sky@chromium.org>
Cr-Commit-Position: refs/heads/master@{#478046}
[modify] https://crrev.com/6000a30410a03f26d271a90fbfe0ba0062fb1e62/chrome/browser/chromeos/system_logs/touch_log_source_ozone.cc
[modify] https://crrev.com/6000a30410a03f26d271a90fbfe0ba0062fb1e62/ui/events/ozone/evdev/input_controller_evdev.cc
[modify] https://crrev.com/6000a30410a03f26d271a90fbfe0ba0062fb1e62/ui/events/ozone/evdev/input_controller_evdev.h
[modify] https://crrev.com/6000a30410a03f26d271a90fbfe0ba0062fb1e62/ui/events/ozone/evdev/input_device_factory_evdev.cc
[modify] https://crrev.com/6000a30410a03f26d271a90fbfe0ba0062fb1e62/ui/events/ozone/evdev/input_device_factory_evdev.h
[modify] https://crrev.com/6000a30410a03f26d271a90fbfe0ba0062fb1e62/ui/events/ozone/evdev/input_device_factory_evdev_proxy.cc
[modify] https://crrev.com/6000a30410a03f26d271a90fbfe0ba0062fb1e62/ui/events/ozone/evdev/input_device_factory_evdev_proxy.h
[modify] https://crrev.com/6000a30410a03f26d271a90fbfe0ba0062fb1e62/ui/events/ozone/evdev/libgestures_glue/gesture_feedback.cc
[modify] https://crrev.com/6000a30410a03f26d271a90fbfe0ba0062fb1e62/ui/events/ozone/evdev/libgestures_glue/gesture_feedback.h
[modify] https://crrev.com/6000a30410a03f26d271a90fbfe0ba0062fb1e62/ui/ozone/public/input_controller.cc
[modify] https://crrev.com/6000a30410a03f26d271a90fbfe0ba0062fb1e62/ui/ozone/public/input_controller.h

Comment 13 by sky@chromium.org, Jun 8 2017

 Issue 624967  has been merged into this issue.
Project Member

Comment 14 by bugdroid1@chromium.org, Jun 9 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/63f2cf0932453fd67b2036e9b2cbef56aa1ded67

commit 63f2cf0932453fd67b2036e9b2cbef56aa1ded67
Author: Scott Violet <sky@chromium.org>
Date: Fri Jun 09 15:48:01 2017

chromeos: Adds ShellObserver::OnShellDestroying

I'm going to use this to ensure some state gets destroyed when the
shell is being destroyed.

BUG= 642863 
TEST=none

Change-Id: I52d422c713d5e5eed7ef0e4247f93ff6121debd1
Reviewed-on: https://chromium-review.googlesource.com/528937
Reviewed-by: James Cook <jamescook@chromium.org>
Commit-Queue: Scott Violet <sky@chromium.org>
Cr-Commit-Position: refs/heads/master@{#478291}
[modify] https://crrev.com/63f2cf0932453fd67b2036e9b2cbef56aa1ded67/ash/shell.cc
[modify] https://crrev.com/63f2cf0932453fd67b2036e9b2cbef56aa1ded67/ash/shell_observer.h

Project Member

Comment 15 by bugdroid1@chromium.org, Jun 9 2017

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

commit c510f5fdf094f135e32b42f33e23a8152af4b881
Author: Scott Violet <sky@chromium.org>
Date: Fri Jun 09 17:07:21 2017

chromeos: adds InputDeviceController mojo interface

This interface will be used by Chrome to set touchpad/mouse related
preferences, and by ash to disable touchpad (in certain scenarios),
among other things.

BUG= 642863 
TEST=none

Change-Id: I3bb3b62e166bcd17817c928af4cdf37e27b83895
Reviewed-on: https://chromium-review.googlesource.com/526734
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: kylechar <kylechar@chromium.org>
Commit-Queue: Scott Violet <sky@chromium.org>
Cr-Commit-Position: refs/heads/master@{#478312}
[modify] https://crrev.com/c510f5fdf094f135e32b42f33e23a8152af4b881/services/ui/BUILD.gn
[modify] https://crrev.com/c510f5fdf094f135e32b42f33e23a8152af4b881/services/ui/manifest.json
[modify] https://crrev.com/c510f5fdf094f135e32b42f33e23a8152af4b881/services/ui/public/cpp/input_devices/BUILD.gn
[add] https://crrev.com/c510f5fdf094f135e32b42f33e23a8152af4b881/services/ui/public/cpp/input_devices/input_device_controller.cc
[add] https://crrev.com/c510f5fdf094f135e32b42f33e23a8152af4b881/services/ui/public/cpp/input_devices/input_device_controller.h
[modify] https://crrev.com/c510f5fdf094f135e32b42f33e23a8152af4b881/services/ui/public/interfaces/input_devices/BUILD.gn
[add] https://crrev.com/c510f5fdf094f135e32b42f33e23a8152af4b881/services/ui/public/interfaces/input_devices/input_device_controller.mojom
[modify] https://crrev.com/c510f5fdf094f135e32b42f33e23a8152af4b881/services/ui/service.cc
[modify] https://crrev.com/c510f5fdf094f135e32b42f33e23a8152af4b881/services/ui/service.h

Project Member

Comment 16 by bugdroid1@chromium.org, Jun 10 2017

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

commit ef765b9b467a4ccea80a20a33f2651f5b3790a5c
Author: Scott Violet <sky@chromium.org>
Date: Sat Jun 10 00:44:12 2017

chromeos: converts InputDeviceSettings to use mojom

This does two things:
. For classic ash case this makes chrome provide the
  ui::mojom::InputDeviceController interface. This is done so classic
  ash and mus/mash can share the same code path.
. Converts InputDeviceSettings to use InputDeviceController (via
  InputDeviceControllerClient). InputDeviceControllerClient is owned
  by BrowserProcessPlatformPartChromeos (other code in chrome will use
  it).

BUG= 642863 
TEST=none

Change-Id: I092eed07ab3a056915185f70bde200904b38361d
Reviewed-on: https://chromium-review.googlesource.com/528064
Commit-Queue: Scott Violet <sky@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Sadrul Chowdhury <sadrul@chromium.org>
Cr-Commit-Position: refs/heads/master@{#478473}
[modify] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/chrome/app/chrome_manifest.json
[modify] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/chrome/browser/BUILD.gn
[modify] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/chrome/browser/browser_process_platform_part_chromeos.cc
[modify] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/chrome/browser/browser_process_platform_part_chromeos.h
[modify] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/chrome/browser/chrome_content_browser_client.cc
[modify] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/chrome/browser/chrome_content_browser_manifest_overlay.json
[modify] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/chrome/browser/chromeos/BUILD.gn
[add] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/chrome/browser/chromeos/chrome_service_name.cc
[add] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/chrome/browser/chromeos/chrome_service_name.h
[modify] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/chrome/browser/chromeos/system/fake_input_device_settings.cc
[modify] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/chrome/browser/chromeos/system/fake_input_device_settings.h
[modify] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/chrome/browser/chromeos/system/input_device_settings.h
[modify] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/chrome/browser/chromeos/system/input_device_settings_impl_ozone.cc
[modify] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/chrome/browser/chromeos/system/input_device_settings_impl_x11.cc
[modify] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/services/ui/public/cpp/input_devices/BUILD.gn
[add] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/services/ui/public/cpp/input_devices/input_device_controller_client.cc
[add] https://crrev.com/ef765b9b467a4ccea80a20a33f2651f5b3790a5c/services/ui/public/cpp/input_devices/input_device_controller_client.h

Comment 18 by sky@chromium.org, Jun 20 2017

Status: Fixed (was: Started)
Project Member

Comment 19 by bugdroid1@chromium.org, Nov 15 2017

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

commit d2e9dc71490080f0ef26cfa69067a4148e5bc157
Author: Jani Hautakangas <jani.hautakangas@lge.com>
Date: Wed Nov 15 06:44:00 2017

Remove ui/base/ime ozone dependency

Since the introduction of ImeKeyboardMus the IME code in ui/base/ime
has no longer ozone dependency. Thus this dependency can be removed
from the build.

Bug:  642863 
Test: gn gen out/ozone_ime --args='use_ozone=true is_component_build=true' &&
  ninja -C out/ozone_ime chrome ozone_unittests ui_base_unittests
gn gen out/ozone_ime --args='target_os="chromeos" use_ozone=true is_component_build=true' &&
  ninja -C out/ozone_ime chrome ozone_unittests ui_base_unittests

Change-Id: Ib74264f6e2d30797a7015c6465a934989b77b3cb
Reviewed-on: https://chromium-review.googlesource.com/763450
Commit-Queue: Gyuyoung Kim <gyuyoung.kim@chromium.org>
Reviewed-by: Shu Chen <shuchen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#516616}
[modify] https://crrev.com/d2e9dc71490080f0ef26cfa69067a4148e5bc157/ui/base/ime/BUILD.gn
[delete] https://crrev.com/5b77edab12b839c6375590e8151b7113652d67f5/ui/base/ime/chromeos/ime_keyboard_ozone.h

Comment 20 by dchan@chromium.org, Jan 22 2018

Status: Archived (was: Fixed)
Components: -Internals>MUS Internals>Services>WindowService
Components: -MUS

Sign in to add a comment