[session] add InputDeviceRegistry support

Serve the `fuchsia.input.injection.InputDeviceRegistry` protocol
from the session, so that we can inject input into that session
for testing purposes.

Note that further work is needed before we can actually run
a test with input injection. The overall work is tracked
in fxbug.dev/60787 (children of that bug are sufficient,
but not all strictly necessary).

Bug: 62127
Test: fx test workstation_session_tests
Change-Id: Ib91ec1ed944da1393c383fe53e09ec1c62e77058
Reviewed-on: https://fuchsia-review.googlesource.com/c/experiences/+/443760
Reviewed-by: Chase Latta <chaselatta@google.com>
Testability-Review: Chase Latta <chaselatta@google.com>
Commit-Queue: Mukesh Agrawal <quiche@google.com>
5 files changed
tree: bfa06057da7f36a00ed47ada8a7c97a082815973
  1. .gitignore
  2. AUTHORS
  3. BUILD.gn
  4. CONTRIBUTING.md
  5. LICENSE
  6. OWNERS
  7. PATENTS
  8. README.md
  9. analysis_options.yaml
  10. base_shells/
  11. benchmarks/
  12. bin/
  13. examples/
  14. lib/
  15. session_shells/
  16. tests/
README.md

Fuchsia Experiences Repository

This is a companion repository to Fuchsia and contains code that either implements or supports user facing code for the Fuchsia platform. The code provides a majority of the user interface for the Workstation product as well as a small set of examples, tests, and benchmarks.

Build & Run

This repository is a “source petal” included in the Fuchsia Platform Source Tree (FPST) checkout. Code in this repository must be built with Fuchsia in order to be functional, see (the guide)[https://fuchsia.dev/fuchsia-src/development/source_code] for instructions on getting the source.

Hardware

Hardware support should be considered experimental. However, NUC's and Pixelbooks are known to work best. For details on hardware setup see: (Install Fuchsia on a Device)[https://fuchsia.dev/fuchsia-src/development/hardware/paving]

Building

Once you have functional checkout you can (configure a build)[https://fuchsia.dev/fuchsia-src/development/build/fx#configure-a-build] targeting Workstation:

    fx set workstation.<board> # For options run: `fx list-boards`
    fx build

See Fuchsia's (build and pave instructions)[https://fuchsia.dev/fuchsia-src/development/build/build_and_pave_quickstart] for detailed instructions.

Running

Once built, standard Fuchsia workflows for paving, running code, and testing apply. See: (fx workflows)[https://fuchsia.dev/fuchsia-src/development/build/fx] for detailed instructions.