summaryrefslogtreecommitdiff
path: root/chromium/fuchsia_web/webengine/web_instance.cml
blob: 192b11573394ef4f915ead715bebdfb2ff682a59 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
{
  include: [
    "inspect/client.shard.cml",
    "syslog/client.shard.cml",
  ],
  program: {
    runner: "elf",
    binary: "web_engine_exe",
  },
  capabilities: [
    {
      protocol: [
        "fuchsia.web.Context",
        "fuchsia.web.FrameHost",
      ]
    }
  ],
  expose: [
    {
      protocol: [
        "fuchsia.web.Context",
        "fuchsia.web.FrameHost",
      ],
      from: "self",
    }
  ],
  use: [
    {
      directory: "config-data",
      rights: [ "r*" ],
      path: "/config/data",
    },
    {
      directory: "command-line-config",
      rights: [ "r*" ],
      path: "/config/command-line",
      availability: "optional",
    },
    {
      // Required capabilities for all configurations.
      protocol: [
        "fuchsia.buildinfo.Provider",
        "fuchsia.device.NameProvider",
        "fuchsia.fonts.Provider",
        "fuchsia.hwinfo.Product",
        "fuchsia.intl.PropertyProvider",
        "fuchsia.kernel.VmexResource",
        "fuchsia.memorypressure.Provider",
        "fuchsia.process.Launcher",
        "fuchsia.sysmem.Allocator",
      ]
    },
    {
      // Optional capabilities, dependent on availability of tracing services.
      protocol: [
          "fuchsia.tracing.perfetto.ProducerConnector",
          "fuchsia.tracing.provider.Registry",
      ],
      availability: "optional",
    },
    {
      // Optional capabilities, dependent on ContextFeatureFlags.
      protocol: [

        // Required by Frame.CreateView*(), unless HEADLESS is set.
        "fuchsia.accessibility.semantics.SemanticsManager",
        "fuchsia.ui.composition.Allocator",
        "fuchsia.ui.composition.Flatland",
        "fuchsia.ui.scenic.Scenic",

        // Required by ContextFeatureFlags.NETWORK
        "fuchsia.net.interfaces.State",
        "fuchsia.net.name.Lookup",
        "fuchsia.posix.socket.Provider",

        // Required by ContextFeatureFlags.AUDIO
        "fuchsia.media.Audio",
        "fuchsia.media.AudioDeviceEnumerator",
        "fuchsia.media.SessionAudioConsumerFactory",

        // Required by ContextFeatureFlags.VULKAN
        "fuchsia.vulkan.loader.Loader",

        // Required by ContextFeatureFlags.HARDWARE_VIDEO_DECODER
        "fuchsia.mediacodec.CodecFactory",

        // Required by ContextFeatureFlags.WIDEVINE_CDM
        "fuchsia.media.drm.Widevine",

        // Required by CreateContextParams.playready_key_system
        "fuchsia.media.drm.PlayReady",

        // Required by ContextFeatureFlags.LEGACY_METRICS
        "fuchsia.legacymetrics.MetricsRecorder",

        // Required by ContextFeatureFlags.KEYBOARD
        "fuchsia.ui.input3.Keyboard",

        // Required by ContextFeatureFlags.VIRTUAL_KEYBOARD
        "fuchsia.input.virtualkeyboard.ControllerCreator",

        // Required by ???
        "fuchsia.camera3.DeviceWatcher",
        "fuchsia.media.ProfileProvider",

        // Required by Frame.SetPreferredTheme(DEFAULT).
        "fuchsia.settings.Display",

      ],
      availability: "optional",
    },
    {
      storage: "cache",
      path: "/cache",
      availability: "optional",
    },
    {
      storage: "data",
      path: "/data",
      availability: "optional",
    },
  ]
}