diff --git a/repos/gems/recipes/pkg/motif_decorator/README b/repos/gems/recipes/pkg/motif_decorator/README new file mode 100644 index 0000000000..3e14d80de4 --- /dev/null +++ b/repos/gems/recipes/pkg/motif_decorator/README @@ -0,0 +1,3 @@ + + Motif-inspired window decorator + diff --git a/repos/gems/recipes/pkg/motif_decorator/archives b/repos/gems/recipes/pkg/motif_decorator/archives new file mode 100644 index 0000000000..87c9ceda2e --- /dev/null +++ b/repos/gems/recipes/pkg/motif_decorator/archives @@ -0,0 +1 @@ +_/src/decorator diff --git a/repos/gems/recipes/pkg/motif_decorator/hash b/repos/gems/recipes/pkg/motif_decorator/hash new file mode 100644 index 0000000000..fc90286c78 --- /dev/null +++ b/repos/gems/recipes/pkg/motif_decorator/hash @@ -0,0 +1 @@ +2018-11-14 d6ad522370b694b39ef1d6100108619504987461 diff --git a/repos/gems/recipes/pkg/motif_decorator/runtime b/repos/gems/recipes/pkg/motif_decorator/runtime new file mode 100644 index 0000000000..c5563dcc0b --- /dev/null +++ b/repos/gems/recipes/pkg/motif_decorator/runtime @@ -0,0 +1,14 @@ + + + + + + </controls> + </config> + + <content> + <rom label="ld.lib.so"/> + <rom label="decorator"/> + </content> + +</runtime> diff --git a/repos/gems/recipes/pkg/motif_wm/archives b/repos/gems/recipes/pkg/motif_wm/archives index e52aacc360..07466c666a 100644 --- a/repos/gems/recipes/pkg/motif_wm/archives +++ b/repos/gems/recipes/pkg/motif_wm/archives @@ -1,4 +1,4 @@ -_/raw/wm +_/raw/motif_wm _/src/wm _/src/report_rom _/src/decorator diff --git a/repos/gems/recipes/pkg/sculpt-installation/archives b/repos/gems/recipes/pkg/sculpt-installation/archives index 5ec9b15b95..5b99b57649 100644 --- a/repos/gems/recipes/pkg/sculpt-installation/archives +++ b/repos/gems/recipes/pkg/sculpt-installation/archives @@ -7,7 +7,10 @@ _/pkg/rom_filter _/pkg/rom_reporter _/pkg/nic_router-nat _/pkg/vbox5-nova-sculpt -_/pkg/themed_wm +_/pkg/wm +_/pkg/themed_decorator +_/pkg/motif_decorator +_/pkg/window_layouter _/pkg/sticks_blue_backdrop _/pkg/nano3d _/pkg/fonts_fs diff --git a/repos/gems/recipes/pkg/sculpt/README b/repos/gems/recipes/pkg/sculpt/README index 9015153a35..b31219284a 100644 --- a/repos/gems/recipes/pkg/sculpt/README +++ b/repos/gems/recipes/pkg/sculpt/README @@ -156,9 +156,13 @@ relationships. On the right, diagnostic messages are presented. # Try adding additional components by selecting items in the "+" context menu of the runtime view. Most components expect the presence of a - window manager. Hence, you should first select "wm". Please pay attention - to diagnostic messages given in the runtime dialog on the left. Whenever - a component depends on another one, a corresponding message appears. + window manager. Hence, you should first select the "wm", "window_layouter", + and "motif_decorator" components to make the window-management functionality + available. The distinct roles of the three components are described below. + + Please pay attention to diagnostic messages given in the runtime dialog on + the left. Whenever a component depends on another one, a corresponding + message appears. # You may click on any component in the runtime view to reveal additional information such as its memory usage. For components that you started @@ -175,8 +179,20 @@ The following example subsystems are available from the "+" menu: is used by the graphical terminal of the noux subsystem and the 'top_view' application. -:'wm': A window manager that displays clients in windows that can be arranged - with the mouse. +:'wm': A component that allows for the creation of windowed graphical + user interfaces. It must be combined with a window layouter and a window + decorator (see below). + +:'window_layouter': A component that defines the behavior and layout policy + of the window manager's windows. By default, each application is hosted in a + floating window that can be moved, resized, and re-stacked with the mouse. + +:'motif_decorator': A window decorator component that defines how window + decorations look. It is inspired by the simplistic look of traditional + Motif-based graphical user interfaces. + +:'themed_decorator: A modern looking window layouter that can be used as + an alternative to the 'motif_decorator'. :'backdrop': A wallpaper that adjusts itself to any screen size. diff --git a/repos/gems/recipes/pkg/themed_decorator/README b/repos/gems/recipes/pkg/themed_decorator/README new file mode 100644 index 0000000000..e8adcbaf48 --- /dev/null +++ b/repos/gems/recipes/pkg/themed_decorator/README @@ -0,0 +1,3 @@ + + Window decorator + diff --git a/repos/gems/recipes/pkg/themed_decorator/archives b/repos/gems/recipes/pkg/themed_decorator/archives new file mode 100644 index 0000000000..6c247f0b06 --- /dev/null +++ b/repos/gems/recipes/pkg/themed_decorator/archives @@ -0,0 +1,5 @@ +_/src/themed_decorator +_/src/libc +_/src/libpng +_/src/vfs +_/src/zlib diff --git a/repos/gems/recipes/pkg/themed_decorator/hash b/repos/gems/recipes/pkg/themed_decorator/hash new file mode 100644 index 0000000000..fc90286c78 --- /dev/null +++ b/repos/gems/recipes/pkg/themed_decorator/hash @@ -0,0 +1 @@ +2018-11-14 d6ad522370b694b39ef1d6100108619504987461 diff --git a/repos/gems/recipes/pkg/themed_decorator/runtime b/repos/gems/recipes/pkg/themed_decorator/runtime new file mode 100644 index 0000000000..0c5672c501 --- /dev/null +++ b/repos/gems/recipes/pkg/themed_decorator/runtime @@ -0,0 +1,21 @@ +<runtime ram="8M" caps="400" binary="themed_decorator"> + + <requires> <nitpicker/> <timer/> </requires> + + <config> + <libc/> + <vfs> <tar name="plain_decorator_theme.tar"/> </vfs> + </config> + + <content> + <rom label="ld.lib.so"/> + <rom label="libc.lib.so"/> + <rom label="libm.lib.so"/> + <rom label="libpng.lib.so"/> + <rom label="vfs.lib.so"/> + <rom label="zlib.lib.so"/> + <rom label="themed_decorator"/> + <rom label="plain_decorator_theme.tar"/> + </content> + +</runtime> diff --git a/repos/gems/recipes/pkg/window_layouter/README b/repos/gems/recipes/pkg/window_layouter/README new file mode 100644 index 0000000000..9aacf5e87b --- /dev/null +++ b/repos/gems/recipes/pkg/window_layouter/README @@ -0,0 +1,3 @@ + + Default window layouter + diff --git a/repos/gems/recipes/pkg/window_layouter/archives b/repos/gems/recipes/pkg/window_layouter/archives new file mode 100644 index 0000000000..3f25d3083c --- /dev/null +++ b/repos/gems/recipes/pkg/window_layouter/archives @@ -0,0 +1,2 @@ +_/raw/window_layouter +_/src/window_layouter diff --git a/repos/gems/recipes/pkg/window_layouter/hash b/repos/gems/recipes/pkg/window_layouter/hash new file mode 100644 index 0000000000..fc90286c78 --- /dev/null +++ b/repos/gems/recipes/pkg/window_layouter/hash @@ -0,0 +1 @@ +2018-11-14 d6ad522370b694b39ef1d6100108619504987461 diff --git a/repos/gems/recipes/pkg/window_layouter/runtime b/repos/gems/recipes/pkg/window_layouter/runtime new file mode 100644 index 0000000000..2c9a1132f4 --- /dev/null +++ b/repos/gems/recipes/pkg/window_layouter/runtime @@ -0,0 +1,11 @@ +<runtime ram="4M" caps="200" binary="window_layouter" config="window_layouter.config"> + + <requires> <nitpicker/> <timer/> </requires> + + <content> + <rom label="ld.lib.so"/> + <rom label="window_layouter"/> + <rom label="window_layouter.config"/> + </content> + +</runtime> diff --git a/repos/gems/recipes/pkg/wm/README b/repos/gems/recipes/pkg/wm/README new file mode 100644 index 0000000000..3477acf5ff --- /dev/null +++ b/repos/gems/recipes/pkg/wm/README @@ -0,0 +1,19 @@ + + Window manager + +This package provides the central part of Genode's componentized GUI stack +via a custom implementation of the nitpicker session interface. +It must be complemented by a window layouter and a window decorator, each of +which is a separate client component. Whereas the window decorator defines how +windows look, the window layouter defines how they behave. + +The window manager, decorator, and layouter propagate their respective state +(like the window layout or the decoration margins) via reports and ROMs. The +window-manager package manages the flow of information between those parties +by providing a report and ROM service to the external layouter and decorator. + +The special roles of the layouter and decorator among the window-manager +clients are identified according to their names (labels), which are suffixed +with "layouter" and "decorator" respectively. All other clients are expected +to be regular windowed applications. + diff --git a/repos/gems/recipes/pkg/wm/archives b/repos/gems/recipes/pkg/wm/archives new file mode 100644 index 0000000000..85ddfe6df8 --- /dev/null +++ b/repos/gems/recipes/pkg/wm/archives @@ -0,0 +1,4 @@ +_/raw/wm +_/src/wm +_/src/report_rom +_/src/init diff --git a/repos/gems/recipes/pkg/wm/hash b/repos/gems/recipes/pkg/wm/hash new file mode 100644 index 0000000000..fc90286c78 --- /dev/null +++ b/repos/gems/recipes/pkg/wm/hash @@ -0,0 +1 @@ +2018-11-14 d6ad522370b694b39ef1d6100108619504987461 diff --git a/repos/gems/recipes/pkg/wm/runtime b/repos/gems/recipes/pkg/wm/runtime new file mode 100644 index 0000000000..1eb01af526 --- /dev/null +++ b/repos/gems/recipes/pkg/wm/runtime @@ -0,0 +1,15 @@ +<runtime ram="16M" caps="500" binary="init" config="wm.config"> + + <requires> <nitpicker/> <timer/> </requires> + + <provides> <nitpicker/> <rom/> <report/> </provides> + + <content> + <rom label="ld.lib.so"/> + <rom label="report_rom"/> + <rom label="wm"/> + <rom label="init"/> + <rom label="wm.config"/> + </content> + +</runtime> diff --git a/repos/gems/recipes/raw/motif_wm/content.mk b/repos/gems/recipes/raw/motif_wm/content.mk new file mode 100644 index 0000000000..2fe6520312 --- /dev/null +++ b/repos/gems/recipes/raw/motif_wm/content.mk @@ -0,0 +1,4 @@ +content: wm.config decorator_init.config layouter.config + +wm.config decorator_init.config layouter.config: + cp $(REP_DIR)/recipes/raw/motif_wm/$@ $@ diff --git a/repos/gems/recipes/raw/wm/decorator_init.config b/repos/gems/recipes/raw/motif_wm/decorator_init.config similarity index 100% rename from repos/gems/recipes/raw/wm/decorator_init.config rename to repos/gems/recipes/raw/motif_wm/decorator_init.config diff --git a/repos/gems/recipes/raw/motif_wm/hash b/repos/gems/recipes/raw/motif_wm/hash new file mode 100644 index 0000000000..5344980046 --- /dev/null +++ b/repos/gems/recipes/raw/motif_wm/hash @@ -0,0 +1 @@ +2018-11-14 fac14f087bce046d503af93da5d0a4bba32e6ec1 diff --git a/repos/gems/recipes/raw/wm/layouter.config b/repos/gems/recipes/raw/motif_wm/layouter.config similarity index 100% rename from repos/gems/recipes/raw/wm/layouter.config rename to repos/gems/recipes/raw/motif_wm/layouter.config diff --git a/repos/gems/recipes/raw/motif_wm/wm.config b/repos/gems/recipes/raw/motif_wm/wm.config new file mode 100644 index 0000000000..cd558c071d --- /dev/null +++ b/repos/gems/recipes/raw/motif_wm/wm.config @@ -0,0 +1,93 @@ +<config> + <parent-provides> + <service name="ROM"/> + <service name="PD"/> + <service name="CPU"/> + <service name="LOG"/> + <service name="Nitpicker"/> + <service name="Timer"/> + </parent-provides> + + <default-route> + <any-service> <parent/> <any-child/> </any-service> + </default-route> + + <default caps="100"/> + + <service name="Nitpicker"> + <default-policy> <child name="wm"/> </default-policy> + </service> + + <start name="report_rom"> + <resource name="RAM" quantum="4M"/> + <provides> + <service name="Report"/> + <service name="ROM"/> + </provides> + <config> + <policy label="layouter -> window_list" report="wm -> window_list"/> + <policy label="layouter -> focus_request" report="wm -> focus_request"/> + <policy label="layouter -> rules" report="layouter -> rules"/> + <policy label="decorator -> window_layout" report="layouter -> window_layout"/> + <policy label="wm -> resize_request" report="layouter -> resize_request"/> + <policy label="decorator -> pointer" report="wm -> pointer"/> + <policy label="layouter -> hover" report="decorator -> hover"/> + <policy label="layouter -> decorator_margins" report="decorator -> decorator_margins"/> + <policy label="wm -> focus" report="layouter -> focus"/> + </config> + </start> + + <start name="wm" caps="250"> + <resource name="RAM" quantum="6M"/> + <provides> + <service name="Nitpicker"/> + </provides> + <config> + <policy label_prefix="decorator" role="decorator"/> + <policy label_prefix="layouter" role="layouter"/> + </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> + <any-service> + <child name="nitpicker"/> <parent/> <any-child/> + </any-service> + </route> + </start> + + <start name="layouter"> + <binary name="window_layouter"/> + <resource name="RAM" quantum="4M"/> + <route> + <service name="ROM" label="config"> <parent label="layouter.config"/> </service> + <service name="ROM" label="window_list"> <child name="report_rom"/> </service> + <service name="ROM" label="focus_request"> <child name="report_rom"/> </service> + <service name="ROM" label="hover"> <child name="report_rom"/> </service> + <service name="ROM" label="decorator_margins"> <child name="report_rom"/> </service> + <service name="ROM" label="rules"> <child name="report_rom"/> </service> + <service name="Report"> <child name="report_rom"/> </service> + <any-service> + <child name="wm"/> <parent/> <any-child/> + </any-service> + </route> + </start> + + <start name="decorator" caps="350"> + <binary name="init"/> + <resource name="RAM" quantum="12M"/> + <route> + <service name="ROM" label="config"> + <parent label="decorator_init.config"/> </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> + + <any-service> + <child name="wm"/> <parent/> <any-child/> + </any-service> + </route> + </start> +</config> diff --git a/repos/gems/recipes/raw/window_layouter/content.mk b/repos/gems/recipes/raw/window_layouter/content.mk new file mode 100644 index 0000000000..9a015b7849 --- /dev/null +++ b/repos/gems/recipes/raw/window_layouter/content.mk @@ -0,0 +1,4 @@ +content: window_layouter.config + +window_layouter.config: + cp $(REP_DIR)/recipes/raw/window_layouter/$@ $@ diff --git a/repos/gems/recipes/raw/window_layouter/hash b/repos/gems/recipes/raw/window_layouter/hash new file mode 100644 index 0000000000..5344980046 --- /dev/null +++ b/repos/gems/recipes/raw/window_layouter/hash @@ -0,0 +1 @@ +2018-11-14 fac14f087bce046d503af93da5d0a4bba32e6ec1 diff --git a/repos/gems/recipes/raw/window_layouter/window_layouter.config b/repos/gems/recipes/raw/window_layouter/window_layouter.config new file mode 100644 index 0000000000..06aaf9ae3f --- /dev/null +++ b/repos/gems/recipes/raw/window_layouter/window_layouter.config @@ -0,0 +1,25 @@ +<config rules="rom"> + <report rules="yes"/> + + <rules> + <screen name="screen"/> + <assign label_prefix="" target="screen" xpos="any" ypos="any"/> + </rules> + + <press key="KEY_SCREEN"> + <press key="KEY_TAB" action="next_window"> + <release key="KEY_TAB"> + <release key="KEY_SCREEN" action="raise_window"/> + </release> + <release key="KEY_SCREEN" action="raise_window"/> + </press> + <press key="KEY_LEFTSHIFT"> + <press key="KEY_TAB" action="prev_window"> + <release key="KEY_TAB"> + <release key="KEY_SCREEN" action="raise_window"/> + </release> + </press> + </press> + <press key="KEY_ENTER" action="toggle_fullscreen"/> + </press> +</config> diff --git a/repos/gems/recipes/raw/wm/content.mk b/repos/gems/recipes/raw/wm/content.mk index 1f8d131556..91bd30892d 100644 --- a/repos/gems/recipes/raw/wm/content.mk +++ b/repos/gems/recipes/raw/wm/content.mk @@ -1,4 +1,4 @@ -content: wm.config decorator_init.config layouter.config +content: wm.config -wm.config decorator_init.config layouter.config: +wm.config: cp $(REP_DIR)/recipes/raw/wm/$@ $@ diff --git a/repos/gems/recipes/raw/wm/wm.config b/repos/gems/recipes/raw/wm/wm.config index cd558c071d..548d7c923a 100644 --- a/repos/gems/recipes/raw/wm/wm.config +++ b/repos/gems/recipes/raw/wm/wm.config @@ -18,6 +18,38 @@ <default-policy> <child name="wm"/> </default-policy> </service> + <service name="ROM"> + <policy label_suffix="layouter -> window_list"> + <child name="report_rom" label="layouter -> window_list"/> </policy> + <policy label_suffix="layouter -> focus_request"> + <child name="report_rom" label="layouter -> focus_request"/> </policy> + <policy label_suffix="layouter -> hover"> + <child name="report_rom" label="layouter -> hover"/> </policy> + <policy label_suffix="layouter -> decorator_margins"> + <child name="report_rom" label="layouter -> decorator_margins"/> </policy> + <policy label_suffix="layouter -> rules"> + <child name="report_rom" label="layouter -> rules"/> </policy> + <policy label_suffix="decorator -> window_layout"> + <child name="report_rom" label="decorator -> window_layout"/> </policy> + <policy label_suffix="decorator -> pointer"> + <child name="report_rom" label="decorator -> pointer"/> </policy> + </service> + + <service name="Report"> + <policy label_suffix="layouter -> window_layout"> + <child name="report_rom" label="layouter -> window_layout"/> </policy> + <policy label_suffix="layouter -> resize_request"> + <child name="report_rom" label="layouter -> resize_request"/> </policy> + <policy label_suffix="layouter -> focus"> + <child name="report_rom" label="layouter -> focus"/> </policy> + <policy label_suffix="layouter -> rules"> + <child name="report_rom" label="layouter -> rules"/> </policy> + <policy label_suffix="decorator -> hover"> + <child name="report_rom" label="decorator -> hover"/> </policy> + <policy label_suffix="decorator -> decorator_margins"> + <child name="report_rom" label="decorator -> decorator_margins"/> </policy> + </service> + <start name="report_rom"> <resource name="RAM" quantum="4M"/> <provides> @@ -27,67 +59,30 @@ <config> <policy label="layouter -> window_list" report="wm -> window_list"/> <policy label="layouter -> focus_request" report="wm -> focus_request"/> - <policy label="layouter -> rules" report="layouter -> rules"/> - <policy label="decorator -> window_layout" report="layouter -> window_layout"/> - <policy label="wm -> resize_request" report="layouter -> resize_request"/> - <policy label="decorator -> pointer" report="wm -> pointer"/> <policy label="layouter -> hover" report="decorator -> hover"/> <policy label="layouter -> decorator_margins" report="decorator -> decorator_margins"/> + <policy label="layouter -> rules" report="layouter -> rules"/> + <policy label="decorator -> window_layout" report="layouter -> window_layout"/> + <policy label="decorator -> pointer" report="wm -> pointer"/> + <policy label="wm -> resize_request" report="layouter -> resize_request"/> <policy label="wm -> focus" report="layouter -> focus"/> </config> </start> <start name="wm" caps="250"> - <resource name="RAM" quantum="6M"/> + <resource name="RAM" quantum="8M"/> <provides> <service name="Nitpicker"/> </provides> <config> - <policy label_prefix="decorator" role="decorator"/> - <policy label_prefix="layouter" role="layouter"/> + <policy label_suffix="decorator -> " role="decorator"/> + <policy label_suffix="layouter -> " role="layouter"/> </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> - <any-service> - <child name="nitpicker"/> <parent/> <any-child/> - </any-service> - </route> - </start> - - <start name="layouter"> - <binary name="window_layouter"/> - <resource name="RAM" quantum="4M"/> - <route> - <service name="ROM" label="config"> <parent label="layouter.config"/> </service> - <service name="ROM" label="window_list"> <child name="report_rom"/> </service> - <service name="ROM" label="focus_request"> <child name="report_rom"/> </service> - <service name="ROM" label="hover"> <child name="report_rom"/> </service> - <service name="ROM" label="decorator_margins"> <child name="report_rom"/> </service> - <service name="ROM" label="rules"> <child name="report_rom"/> </service> - <service name="Report"> <child name="report_rom"/> </service> - <any-service> - <child name="wm"/> <parent/> <any-child/> - </any-service> - </route> - </start> - - <start name="decorator" caps="350"> - <binary name="init"/> - <resource name="RAM" quantum="12M"/> - <route> - <service name="ROM" label="config"> - <parent label="decorator_init.config"/> </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> - - <any-service> - <child name="wm"/> <parent/> <any-child/> - </any-service> + <any-service> <parent/> </any-service> </route> </start> </config> diff --git a/repos/gems/run/depot_deploy.run b/repos/gems/run/depot_deploy.run index 763b0053dc..3bb67af53a 100644 --- a/repos/gems/run/depot_deploy.run +++ b/repos/gems/run/depot_deploy.run @@ -16,7 +16,11 @@ import_from_depot [depot_user]/src/[base_src] \ create_tar_from_depot_binaries [run_dir]/genode/depot.tar \ [depot_user]/pkg/sculpt-installation \ - [depot_user]/pkg/themed_wm \ + [depot_user]/pkg/wm \ + [depot_user]/pkg/nano3d \ + [depot_user]/pkg/window_layouter \ + [depot_user]/pkg/motif_decorator \ + [depot_user]/pkg/themed_decorator \ [depot_user]/pkg/sticks_blue_backdrop proc current_pkg { pkg } { return $pkg/[_current_depot_archive_version pkg $pkg] } @@ -151,12 +155,34 @@ install_config { <service name="Timer"> <parent/> </service> </common_routes> - <start name="wm" pkg="} [depot_user]/pkg/[current_pkg themed_wm] {"> + <start name="wm" pkg="} [depot_user]/pkg/[current_pkg wm] {"> <route> <service name="Nitpicker"> <parent/> </service> </route> </start> + <start name="window_layouter" pkg="} [depot_user]/pkg/[current_pkg window_layouter] {"> + <route> + <service name="ROM" label="window_list"> <child name="wm"/> </service> + <service name="ROM" label="focus_request"> <child name="wm"/> </service> + <service name="ROM" label="hover"> <child name="wm"/> </service> + <service name="ROM" label="decorator_margins"> <child name="wm"/> </service> + <service name="ROM" label="rules"> <child name="wm"/> </service> + <service name="Report"> <child name="wm"/> </service> + <service name="Nitpicker"> <child name="wm"/> </service> + </route> + </start> + + <start name="themed_decorator" pkg="} [depot_user]/pkg/[current_pkg themed_decorator] {"> + <route> + <service name="ROM" label="window_layout"> <child name="wm"/> </service> + <service name="ROM" label="pointer"> <child name="wm"/> </service> + <service name="Report"> <child name="wm"/> </service> + <service name="Nitpicker"> <child name="wm"/> </service> + </route> + </start> + + <start name="backdrop" pkg="} [depot_user]/pkg/[current_pkg sticks_blue_backdrop] {"> <route> <service name="Nitpicker"> <parent label="backdrop"/> </service> @@ -171,15 +197,14 @@ install_config { </start> --> -<!-- <start name="nano3d" pkg="} [depot_user]/pkg/[current_pkg nano3d] {"> <route> <service name="Nitpicker"> <child name="wm"/> </service> </route> <config shape="cube"/> </start> - --> +<!-- <start name="fonts_fs" pkg="} [depot_user]/pkg/[current_pkg fonts_fs] {"> <route> <service name="ROM" label="config"> <parent label="fonts.config"/> </service> @@ -193,6 +218,7 @@ install_config { <service name="File_system"> <parent/> </service> </route> </start> + --> <!-- vbox, nic_router, acpica --> diff --git a/repos/gems/run/sculpt/launcher/motif_decorator b/repos/gems/run/sculpt/launcher/motif_decorator new file mode 100644 index 0000000000..ca5dc85d44 --- /dev/null +++ b/repos/gems/run/sculpt/launcher/motif_decorator @@ -0,0 +1,8 @@ +<launcher pkg="motif_decorator"> + <route> + <service name="ROM" label="window_layout"> <child name="wm"/> </service> + <service name="ROM" label="pointer"> <child name="wm"/> </service> + <service name="Report"> <child name="wm"/> </service> + <service name="Nitpicker"> <child name="wm"/> </service> + </route> +</launcher> diff --git a/repos/gems/run/sculpt/launcher/themed_decorator b/repos/gems/run/sculpt/launcher/themed_decorator new file mode 100644 index 0000000000..a9fe9c0936 --- /dev/null +++ b/repos/gems/run/sculpt/launcher/themed_decorator @@ -0,0 +1,8 @@ +<launcher pkg="themed_decorator"> + <route> + <service name="ROM" label="window_layout"> <child name="wm"/> </service> + <service name="ROM" label="pointer"> <child name="wm"/> </service> + <service name="Report"> <child name="wm"/> </service> + <service name="Nitpicker"> <child name="wm"/> </service> + </route> +</launcher> diff --git a/repos/gems/run/sculpt/launcher/window_layouter b/repos/gems/run/sculpt/launcher/window_layouter new file mode 100644 index 0000000000..ebfda90815 --- /dev/null +++ b/repos/gems/run/sculpt/launcher/window_layouter @@ -0,0 +1,11 @@ +<launcher pkg="window_layouter"> + <route> + <service name="ROM" label="window_list"> <child name="wm"/> </service> + <service name="ROM" label="focus_request"> <child name="wm"/> </service> + <service name="ROM" label="hover"> <child name="wm"/> </service> + <service name="ROM" label="decorator_margins"> <child name="wm"/> </service> + <service name="ROM" label="rules"> <child name="wm"/> </service> + <service name="Report"> <child name="wm"/> </service> + <service name="Nitpicker"> <child name="wm"/> </service> + </route> +</launcher> diff --git a/repos/gems/run/sculpt/launcher/wm b/repos/gems/run/sculpt/launcher/wm index a48fdf651e..9973164ca5 100644 --- a/repos/gems/run/sculpt/launcher/wm +++ b/repos/gems/run/sculpt/launcher/wm @@ -1,4 +1,4 @@ -<launcher pkg="themed_wm"> +<launcher pkg="wm"> <route> <service name="Nitpicker" label="wm -> "> <parent label="focus"/> </service> <service name="Nitpicker"> <parent/> </service>