| // Copyright 2022 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // Before adding new declarations to this file, please confirm that they are |
| // relevant to the component scene_manager.cml. If they're unique to input |
| // pipeline, they should be placed into |
| // //src/ui/lib/input_pipeline/meta/client.shard.cml or similar. |
| { |
| include: [ "//src/ui/lib/input_pipeline/meta/client.shard.cml" ], |
| capabilities: [ |
| { |
| protocol: [ |
| "fuchsia.element.GraphicalPresenter", |
| "fuchsia.session.scene.Manager", |
| "fuchsia.ui.brightness.ColorAdjustment", |
| "fuchsia.ui.brightness.ColorAdjustmentHandler", |
| "fuchsia.ui.input.config.Features", |
| "fuchsia.ui.policy.DisplayBacklight", |
| ], |
| }, |
| ], |
| use: [ |
| { |
| protocol: [ |
| // Used to register with the a11y service as the color transform handler. |
| "fuchsia.accessibility.ColorTransform", |
| |
| // Used to register with the a11y service as the magnification handler. |
| "fuchsia.accessibility.Magnifier", |
| |
| // Used by the input pipeline library which is linked into the |
| // scene manager. |
| "fuchsia.accessibility.scene.Provider", |
| "fuchsia.metrics.MetricEventLoggerFactory", |
| "fuchsia.settings.Keyboard", |
| |
| // Graphics protocols needed for scene management. |
| "fuchsia.ui.composition.Flatland", |
| "fuchsia.ui.composition.FlatlandDisplay", |
| "fuchsia.ui.composition.internal.DisplayOwnership", |
| "fuchsia.ui.display.color.Converter", |
| "fuchsia.ui.display.singleton.Info", |
| "fuchsia.ui.input.ImeService", |
| "fuchsia.ui.input3.Keyboard", |
| "fuchsia.ui.input3.KeyEventInjector", |
| |
| // Used by the input pipeline library to distribute focus. |
| "fuchsia.ui.keyboard.focus.Controller", |
| "fuchsia.ui.views.ViewRefInstalled", |
| ], |
| }, |
| { |
| protocol: [ |
| "fuchsia.media.sounds.Player", |
| |
| // Used for power integration if configured. |
| "fuchsia.power.system.ActivityGovernor", |
| "fuchsia.scheduler.RoleManager", |
| ], |
| availability: "optional", |
| }, |
| { |
| config: "fuchsia.ui.IdleThresholdMs", |
| key: "idle_threshold_ms", |
| type: "uint64", |
| }, |
| { |
| config: "fuchsia.ui.SupportedInputDevices", |
| key: "supported_input_devices", |
| type: "vector", |
| element: { |
| type: "string", |
| max_size: 12, |
| }, |
| max_count: 6, |
| }, |
| { |
| config: "fuchsia.scenic.DisplayRotation", |
| key: "display_rotation", |
| type: "uint64", |
| }, |
| { |
| config: "fuchsia.ui.DisplayPixelDensity", |
| key: "display_pixel_density", |
| type: "string", |
| max_size: 8, |
| }, |
| { |
| config: "fuchsia.ui.ViewingDistance", |
| key: "viewing_distance", |
| type: "string", |
| max_size: 8, |
| }, |
| { |
| config: "fuchsia.power.SuspendEnabled", |
| from: "parent", |
| key: "suspend_enabled", |
| type: "bool", |
| }, |
| { |
| config: "fuchsia.ui.AttachA11yView", |
| key: "attach_a11y_view", |
| type: "bool", |
| }, |
| { |
| config: "fuchsia.ui.EnableMergeTouchEvents", |
| key: "enable_merge_touch_events", |
| type: "bool", |
| }, |
| ], |
| expose: [ |
| { |
| protocol: [ |
| "fuchsia.element.GraphicalPresenter", |
| "fuchsia.session.scene.Manager", |
| "fuchsia.ui.brightness.ColorAdjustment", |
| "fuchsia.ui.brightness.ColorAdjustmentHandler", |
| "fuchsia.ui.input.config.Features", |
| "fuchsia.ui.policy.DisplayBacklight", |
| ], |
| from: "self", |
| }, |
| ], |
| } |