blob: fc0602586d97f46e3ba5cb3fb9e929cee90c22b9 [file] [log] [blame]
// 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.
// This shard is shared across all production UI realms for products with
// displays. It should contain the routes to #ui that are common to all
// such products. It should also contain routes from #ui to appmgr to
// satisfy remaining v1 dependencies.
{
// Protocols used from a child are routed to the v1 sys realm.
// See also //src/sys/appmgr/meta/appmgr.core_shard.cml
use: [
{
// Expose FlatlandDisplay to the V1 realm for the benefit of
// flatland_benchmark.
// TODO(fxbug.dev/104906): Remove this when no longer needed.
protocol: [ "fuchsia.ui.composition.FlatlandDisplay" ],
from: "#ui",
dependency: "weak_for_migration",
},
{
protocol: [
"fuchsia.accessibility.gesture.ListenerRegistry",
"fuchsia.accessibility.semantics.SemanticsManager",
"fuchsia.accessibility.tts.EngineRegistry",
"fuchsia.accessibility.tts.TtsManager",
"fuchsia.accessibility.virtualkeyboard.Registry",
"fuchsia.input.virtualkeyboard.ControllerCreator",
"fuchsia.input.virtualkeyboard.Manager",
"fuchsia.recovery.policy.Device",
"fuchsia.recovery.ui.FactoryResetCountdown",
"fuchsia.ui.brightness.ColorAdjustmentHandler",
"fuchsia.ui.composition.Allocator",
"fuchsia.ui.composition.Flatland",
"fuchsia.ui.composition.internal.ScreenCapture",
"fuchsia.ui.composition.ScreenCapture",
"fuchsia.ui.display.singleton.Info",
"fuchsia.ui.focus.FocusChainListenerRegistry",
"fuchsia.ui.input.ImeService",
"fuchsia.ui.input3.Keyboard",
"fuchsia.ui.input3.KeyEventInjector",
"fuchsia.ui.keyboard.focus.Controller",
"fuchsia.ui.pointerinjector.Registry",
"fuchsia.ui.policy.DeviceListenerRegistry",
"fuchsia.ui.policy.DisplayBacklight",
"fuchsia.ui.scenic.Scenic",
"fuchsia.ui.views.ViewRefInstalled",
],
from: "#ui",
dependency: "weak_for_migration",
},
],
offer: [
// Routes from boostrap realm. These are all offered from "parent".
{
protocol: [
"fuchsia.logger.LogSink",
"fuchsia.scheduler.ProfileProvider",
],
from: "parent",
to: "#ui",
},
{
directory: "config-data",
from: "parent",
to: "#ui",
},
{
directory: "dev-class",
from: "parent",
as: "dev-display-coordinator",
to: [ "#ui" ],
subdir: "display-coordinator",
},
{
directory: "dev-class",
from: "parent",
as: "dev-input-report",
to: [ "#ui" ],
subdir: "input-report",
},
// Routes from core or required shards.
//
// PLEASE KEEP THESE ALPHABETICAL IN TERMS OF "FROM", WITH "SELF" FIRST.
{
storage: [ "tmp" ],
from: "self",
to: "#ui",
},
{
protocol: [ "fuchsia.metrics.MetricEventLoggerFactory" ],
from: "#cobalt",
to: "#ui",
},
{
protocol: [ "fuchsia.stash.Store" ],
from: "#stash",
to: "#ui",
},
{
protocol: [ "fuchsia.sysmem.Allocator" ],
from: "#sysmem_connector",
to: "#ui",
},
{
protocol: [ "fuchsia.vulkan.loader.Loader" ],
from: "#vulkan_loader",
to: "#ui",
},
// Routes from optional shards.
// All of these routes should be marked `source_availability: "unknown"`
//
// PLEASE KEEP THESE ALPHABETICAL IN TERMS OF "FROM".
{
protocol: [ "fuchsia.media.ProfileProvider" ],
from: "#audio_core",
to: "#ui",
source_availability: "unknown",
},
{
protocol: [ "fuchsia.recovery.FactoryReset" ],
from: "#factory_reset",
to: "#ui",
source_availability: "unknown",
},
{
protocol: [ "fuchsia.feedback.LastRebootInfoProvider" ],
from: "#feedback",
to: "#ui",
source_availability: "unknown",
},
{
protocol: "fuchsia.intl.PropertyProvider",
from: "#intl",
to: "#ui",
source_availability: "unknown",
},
{
protocol: [ "fuchsia.settings.Accessibility" ],
from: "#setui_service",
to: "#ui",
source_availability: "unknown",
},
],
}