<config>
	<input name="leitzentrale_enabled" rom="leitzentrale" node="leitzentrale">
		<attribute name="enabled" /> </input>

	<output node="config">
		<inline>
			<parent-provides>
				<service name="ROM"/>
				<service name="PD"/>
				<service name="RM"/>
				<service name="CPU"/>
				<service name="LOG"/>
				<service name="Report"/>
				<service name="Gui"/>
				<service name="Timer"/>
				<service name="File_system"/>
			</parent-provides>

			<default-route> <any-service> <parent/> </any-service> </default-route>

			<default caps="100"/>

			<service name="Gui">
				<default-policy> <child name="wm"/> </default-policy> </service>

			<service name="Capture">
				<default-policy> <child name="nitpicker"/> </default-policy> </service>

			<service name="Event">
				<default-policy> <child name="nitpicker"/> </default-policy> </service>

			<service name="File_system">
				<default-policy> <child name="fonts_fs"/> </default-policy> </service>

			<service name="ROM">
				<default-policy> <child name="report_rom"/> </default-policy> </service>

			<service name="Report">
				<default-policy> <child name="report_rom"/> </default-policy> </service>
		</inline>
		<if>
			<has_value input="leitzentrale_enabled" value="yes" />
			<then>
				<inline>
					<start name="fader">
						<binary name="gui_fader"/>
						<resource name="RAM" quantum="50M"/>
						<provides> <service name="Gui"/> </provides>
						<config initial_fade_in_steps="100" fade_in_steps="20" alpha="210"/>
						<route>
							<service name="Gui"> <child name="manager"/> </service>
							<any-service> <parent/> </any-service>
						</route>
					</start>
				</inline>
			</then>
			<else>
				<inline>
					<start name="fader">
						<binary name="gui_fader"/>
						<resource name="RAM" quantum="50M"/>
						<provides> <service name="Gui"/> </provides>
						<config fade_out_steps="30" alpha="0"/>
						<route>
							<service name="Gui"> <child name="manager"/> </service>
							<any-service> <parent/> </any-service>
						</route>
					</start>
				</inline>
			</else>
		</if>
		<inline>
			<start name="gui_fb">
				<resource name="RAM" quantum="18M"/>
				<provides> <service name="Framebuffer"/> <service name="Input"/> </provides>
				<config/>
				<route>
					<service name="Gui"> <child name="fader"/> </service>
					<any-service> <parent/> </any-service>
				</route>
			</start>

			<start name="nitpicker" caps="200">
				<resource name="RAM" quantum="8M"/>
				<provides>
					<service name="Gui"/> <service name="Capture"/> <service name="Event"/>
				</provides>
				<config focus="rom" request_input="yes" request_framebuffer="yes">
					<background color="#272f45"/>
					<domain name="default" layer="1" content="client" label="no" hover="always" focus="click"/>
					<default-policy domain="default"/>
					<capture/>
					<event/>
				</config>
				<route>
					<service name="Input">             <child name="gui_fb"/> </service>
					<service name="Framebuffer">       <child name="gui_fb"/> </service>
					<service name="ROM" label="focus"> <child name="report_rom"/> </service>
					<service name="Report"> <child name="report_rom"/> </service>
					<any-service> <parent/> <any-child/> </any-service>
				</route>
			</start>

			<start name="report_rom" caps="200">
				<resource name="RAM" quantum="4M"/>
				<provides>
					<service name="Report"/>
					<service name="ROM"/>
				</provides>
				<config verbose="no">
					<policy label="decorator -> window_layout"   report="manager -> window_layout"/>
					<policy label="wm -> resize_request"         report="manager -> window_layout"/>
					<policy label="wm -> focus"                  report="manager -> wm_focus"/>
					<policy label="decorator -> pointer"         report="wm -> pointer"/>
					<policy label="manager -> window_list"       report="wm -> window_list"/>
					<policy label="manager -> decorator_margins" report="decorator -> decorator_margins"/>
					<policy label="nitpicker -> focus"           report="manager -> focus"/>
					<policy label="runtime -> leitzentrale -> menu_view -> dialog"
					        report="manager -> menu_dialog"/>
					<policy label="runtime -> leitzentrale -> network_view -> dialog"
					        report="manager -> network_dialog"/>
					<policy label="runtime -> leitzentrale -> settings_view -> dialog"
					        report="manager -> settings_dialog"/>
					<policy label="runtime -> leitzentrale -> file_browser_view -> dialog"
					        report="manager -> file_browser_dialog"/>
					<policy label="runtime -> leitzentrale -> popup_view -> dialog"
					        report="manager -> popup_dialog"/>
					<policy label="runtime -> leitzentrale -> panel_view -> dialog"
					        report="manager -> panel_dialog"/>
					<policy label="runtime -> leitzentrale -> runtime_view -> dialog"
					        report="manager -> runtime_dialog"/>
					<policy label="manager -> menu_view_hover"
					        report="runtime -> leitzentrale -> menu_view -> hover"/>
					<policy label="manager -> network_view_hover"
					        report="runtime -> leitzentrale -> network_view -> hover"/>
					<policy label="manager -> settings_view_hover"
					        report="runtime -> leitzentrale -> settings_view -> hover"/>
					<policy label="manager -> file_browser_view_hover"
					        report="runtime -> leitzentrale -> file_browser_view -> hover"/>
					<policy label="manager -> runtime_view_hover"
					        report="runtime -> leitzentrale -> runtime_view -> hover"/>
					<policy label="manager -> panel_view_hover"
					        report="runtime -> leitzentrale -> panel_view -> hover"/>
					<policy label="manager -> popup_view_hover"
					        report="runtime -> leitzentrale -> popup_view -> hover"/>
				</config>
			</start>

			<start name="wm" caps="300">
				<resource name="RAM" quantum="4M"/>
				<provides>
					<service name="Gui"/> <service name="Report"/> <service name="ROM"/>
				</provides>
				<config>
					<policy label_prefix="decorator" role="decorator"/>
					<default-policy/>
				</config>
				<route>
					<service name="ROM" label="resize_request"> <child name="report_rom"/> </service>
					<service name="ROM" label="focus">          <child name="report_rom"/> </service>
					<service name="Report">                     <child name="report_rom"/> </service>
					<service name="Gui"> <child name="nitpicker"/> </service>
					<any-service> <parent/> <any-child/> </any-service>
				</route>
			</start>

			<start name="decorator" caps="350">
				<binary name="themed_decorator"/>
				<resource name="RAM" quantum="10M"/>
				<config>
					<libc/>
					<vfs>
						<dir name="theme">
							<inline name="metadata">
								<theme>
									<aura  top="5" bottom="5" left="5" right="5"/>
									<decor top="6" bottom="6" left="6" right="6"/>
								</theme>
							</inline>
							<rom name="default.png"/>
						</dir>
						<dir name="dev"> <log/> </dir>
					</vfs>
					<policy label="log" decoration="yes" motion="20"/>
					<policy label="runtime -> leitzentrale -> settings_view"     decoration="no" motion="20"/>
					<policy label="runtime -> leitzentrale -> file_browser_view" decoration="no" motion="30"/>
					<policy label="runtime -> leitzentrale -> network_view"      decoration="no" motion="20"/>
					<policy label="runtime -> leitzentrale -> runtime_view"      decoration="no" motion="30"/>
					<policy label="runtime -> leitzentrale -> menu_view"         decoration="no" motion="30"/>
					<policy label="runtime -> leitzentrale -> popup_view"        decoration="no" motion="20"/>
					<policy label="runtime -> leitzentrale -> panel_view"        decoration="no" motion="20"/>
					<policy label_prefix="logo" decoration="no"/>
					<default-policy/>
				</config>
				<route>
					<service name="ROM"    label="default.png"> <parent label="drop_shadow.png"/> </service>
					<service name="ROM"    label="window_layout">     <child name="report_rom"/> </service>
					<service name="ROM"    label="pointer">           <child name="report_rom"/> </service>
					<service name="Report" label="decorator_margins"> <child name="report_rom"/> </service>
					<service name="Report" label="hover">             <child name="report_rom"/> </service>
					<service name="Gui">                        <child name="wm"/>         </service>
					<any-service> <parent/> </any-service>
				</route>
			</start>

			<start name="config_fs_report">
				<binary name="fs_report"/>
				<resource name="RAM" quantum="2M"/>
				<provides> <service name="Report"/> </provides>
				<config> <vfs> <fs/> </vfs> </config>
				<route>
					<service name="File_system"> <parent label="config"/> </service>
					<any-service> <parent/> </any-service>
				</route>
			</start>

			<start name="manager" caps="300">
				<binary name="sculpt_manager"/>
				<resource name="RAM" quantum="3M"/>
				<provides> <service name="Gui"/> </provides>
				<config/>
				<route>
					<service name="Report" label="runtime_config">
						<child name="config_fs_report" label="managed -> runtime"/> </service>
					<service name="Report" label="deploy_config">
						<child name="config_fs_report" label="managed -> deploy"/> </service>
					<service name="Report" label="wifi_config">
						<child name="config_fs_report" label="managed -> wifi"/> </service>
					<service name="Report" label="fonts_config">
						<child name="config_fs_report" label="managed -> fonts"/> </service>
					<service name="Report" label="nic_router_config">
						<child name="config_fs_report" label="managed -> nic_router"/> </service>
					<service name="Report" label="fb_drv_config">
						<child name="config_fs_report" label="managed -> fb_drv"/> </service>
					<service name="Report" label="event_filter_config">
						<child name="config_fs_report" label="managed -> event_filter"/> </service>
					<service name="Report" label="installation_config">
						<child name="config_fs_report" label="managed -> installation"/> </service>
					<service name="Report" label="depot_query">
						<child name="config_fs_report" label="managed -> depot_query"/> </service>
					<service name="Report"> <child name="report_rom"/> </service>
					<service name="ROM" label_prefix="report ->"> <parent/> </service>
					<service name="ROM" label_suffix="_hover"> <child name="report_rom"/> </service>
					<service name="ROM" label="window_list"> <child name="report_rom"/> </service>
					<service name="ROM" label="decorator_margins"> <child name="report_rom"/> </service>
					<service name="Gui"> <parent/> </service>
					<any-service> <parent/> </any-service>
				</route>
			</start>

			<start name="fonts_fs" caps="100">
				<binary name="vfs"/>
				<resource name="RAM" quantum="4M"/>
				<provides> <service name="File_system"/> </provides>
				<route>
					<service name="ROM" label="config">
						<parent label="config -> managed/fonts"/> </service>
					<any-service> <parent/> </any-service>
				</route>
			</start>

			<start name="log_terminal">
				<binary name="terminal"/>
				<resource name="RAM" quantum="8M"/>
				<provides> <service name="Terminal"/> </provides>
				<config>
					<initial width="400"/>
					<palette>
						<color index="0" value="#2f3953"/>
						<color index="8" value="#2f3953"/>
					</palette>
					<vfs>
						<rom name="VeraMono.ttf"/>
						<dir name="fonts">
							<dir name="monospace">
								<ttf name="regular" path="/VeraMono.ttf" size_px="10"/>
							</dir>
						</dir>
					</vfs>
				</config>
				<route>
					<service name="Gui"> <child name="wm" label="log"/> </service>
					<any-service> <parent/> </any-service>
				</route>
			</start>

			<start name="log" caps="100">
				<binary name="stdin2out"/>
				<resource name="RAM" quantum="2M" />
				<config>
					<libc stdin="/report/log" stdout="/dev/terminal"/>
					<vfs>
						<dir name="dev"> <terminal/> </dir>
						<dir name="report"> <fs label="report"/> </dir>
					</vfs>
				</config>
				<route>
					<service name="File_system"> <parent label="report"/> </service>
					<any-service> <child name="log_terminal"/> <parent/> </any-service>
				</route>
			</start>

			<start name="backdrop" caps="150">
				<resource name="RAM" quantum="4M" />
				<config width="300" height="150">
					<libc/>
					<vfs> <rom name="genode_logo.png"/> </vfs>
					<fill color="#272f45"/>
					<image png="genode_logo.png" anchor="bottom_right" alpha="100"
					                             xpos="-20" ypos="-20" />
				</config>
				<route>
					<service name="Gui"> <child name="wm" label="logo"/> </service>
					<any-service> <parent/> </any-service>
				</route>
			</start>

		</inline>
	</output>
</config>
