// 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.
{
    include: [
        "//sdk/lib/inspect/client.shard.cml",
        "syslog/client.shard.cml",
    ],
    program: {
        runner: "elf",
        binary: "bin/scene_manager",
    },
    children: [
        {
            name: "cursor",
            url: "fuchsia-pkg://fuchsia.com/cursor#meta/cursor.cm",
        },
    ],
    capabilities: [
        {
            protocol: [
                "fuchsia.input.injection.InputDeviceRegistry",
                "fuchsia.session.scene.Manager",
                "fuchsia.ui.accessibility.view.Registry",
            ],
        },
    ],
    use: [
        {
            directory: "dev-input-report",
            from: "parent",
            rights: [ "r*" ],
            path: "/dev/class/input-report",
        },
        {
            protocol: [
                // 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.settings.Keyboard",
                "fuchsia.ui.composition.Flatland",
                "fuchsia.ui.composition.FlatlandDisplay",

                // Used by the input pipeline library to distribute focus.
                "fuchsia.ui.focus.FocusChainListenerRegistry",
                "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.pointerinjector.Registry",
                "fuchsia.ui.scenic.Scenic",

                // Used by the input pipeline library to distribute focus.
                "fuchsia.ui.shortcut.Manager",
                "fuchsia.ui.views.ViewRefInstalled",
            ],
        },
        {
            protocol: "fuchsia.ui.app.ViewProvider",
            from: "#cursor",
        },
    ],
    offer: [
        {
            protocol: [
                "fuchsia.logger.LogSink",
                "fuchsia.sysmem.Allocator",
                "fuchsia.tracing.provider.Registry",
                "fuchsia.ui.composition.Allocator",
                "fuchsia.ui.composition.Flatland",
                "fuchsia.ui.scenic.Scenic",
                "fuchsia.vulkan.loader.Loader",
            ],
            from: "parent",
            to: [ "#cursor" ],
        },
    ],
    expose: [
        {
            protocol: [
                "fuchsia.input.injection.InputDeviceRegistry",
                "fuchsia.session.scene.Manager",
                "fuchsia.ui.accessibility.view.Registry",
            ],
            from: "self",
        },
    ],
}
