tree: 4c4378b2ae84a36ba43b9fb23dde4086ccb0232e [path history] [tgz]
  1. meta/
  2. src/


Reviewed on: 2021-01-21

element_manager is a component that implements the fuchsia.element.Manager protocol. element_manager is not intended to be used on its own, but instead composed into a session as a child.

element_manager launches all elements proposed using Manager in a collection.


To add this project to your build, append --with //src/session/bin/element_manager to the fx set invocation.


To include element_manager in a session, add the following to the session's component manifest.

Once available, session manifests should instead include element_manager.shard.cml. Related monorail issue:

    children: [
            name: "element_manager",
            url: "fuchsia-pkg://",
            startup: "eager",
    capabilities: [
        { protocol: "fuchsia.element.Manager" },
    offer: [
            protocol: [ "fuchsia.logger.LogSink" ],
            from: "parent",
            to: [ "#element_manager" ],
    expose: [
            protocol: "fuchsia.element.Manager",
            from: "#element_manager",


Unit tests for element_manager are available in the element_manager_tests package.

$ fx test element_manager_tests

Source layout

The entrypoint is located in src/ Unit tests are co-located with the code.

Element annotations

element_manager writes annotations in the namespace “element_manager”.

NamespaceKeyValue [type]Description
element_managerurlElement component URL [text]Set from the value from component_url in the proposed element spec. The GraphicalPresenter implementation can use this annotation to determine which component is associated with an element's view.