blob: 6bf28eda82c1c5e0449a909c148679e0829cef9e [file]
// 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",
},
],
}