From 253d6b0b9270c139cb425aefe70143572eaebe92 Mon Sep 17 00:00:00 2001 From: Emery Hemingway Date: Sat, 9 Feb 2019 16:25:43 +0100 Subject: [PATCH] Runtime package of clipboard service Fix #3150 --- repos/os/recipes/pkg/clipboard/README | 1 + repos/os/recipes/pkg/clipboard/archives | 1 + repos/os/recipes/pkg/clipboard/hash | 1 + repos/os/recipes/pkg/clipboard/runtime | 16 ++++++++++++++++ repos/os/src/server/clipboard/main.cc | 13 ++++++++++++- .../recipes/raw/vbox5-nova-sculpt/init.config | 2 ++ 6 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 repos/os/recipes/pkg/clipboard/README create mode 100644 repos/os/recipes/pkg/clipboard/archives create mode 100644 repos/os/recipes/pkg/clipboard/hash create mode 100644 repos/os/recipes/pkg/clipboard/runtime diff --git a/repos/os/recipes/pkg/clipboard/README b/repos/os/recipes/pkg/clipboard/README new file mode 100644 index 0000000000..44cd068fc4 --- /dev/null +++ b/repos/os/recipes/pkg/clipboard/README @@ -0,0 +1 @@ +Clipboard service diff --git a/repos/os/recipes/pkg/clipboard/archives b/repos/os/recipes/pkg/clipboard/archives new file mode 100644 index 0000000000..54ec055239 --- /dev/null +++ b/repos/os/recipes/pkg/clipboard/archives @@ -0,0 +1 @@ +_/src/clipboard diff --git a/repos/os/recipes/pkg/clipboard/hash b/repos/os/recipes/pkg/clipboard/hash new file mode 100644 index 0000000000..39cdd0ded6 --- /dev/null +++ b/repos/os/recipes/pkg/clipboard/hash @@ -0,0 +1 @@ +- diff --git a/repos/os/recipes/pkg/clipboard/runtime b/repos/os/recipes/pkg/clipboard/runtime new file mode 100644 index 0000000000..4eae520deb --- /dev/null +++ b/repos/os/recipes/pkg/clipboard/runtime @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/repos/os/src/server/clipboard/main.cc b/repos/os/src/server/clipboard/main.cc index 4e74902f38..0d8b2e80b3 100644 --- a/repos/os/src/server/clipboard/main.cc +++ b/repos/os/src/server/clipboard/main.cc @@ -82,17 +82,28 @@ struct Clipboard::Main : Rom::Module::Read_policy, Rom::Module::Write_policy return _config.xml().attribute_value(attr, false); } - bool verbose = _verbose_config(); + bool verbose { _verbose_config() }; typedef Genode::String<100> Domain; Genode::Attached_rom_dataspace _focus_ds { _env, "focus" }; + Genode::Signal_handler
_config_handler = + { _env.ep(), *this, &Main::_handle_config }; Genode::Signal_handler
_focus_handler = { _env.ep(), *this, &Main::_handle_focus }; Domain _focused_domain { }; + /** + * Handle configuration changes + */ + void _handle_config() + { + _config.update(); + verbose = _verbose_config(); + } + /** * Handle the change of the current nitpicker focus * diff --git a/repos/ports/recipes/raw/vbox5-nova-sculpt/init.config b/repos/ports/recipes/raw/vbox5-nova-sculpt/init.config index c417bd40aa..ad1c2a09d2 100755 --- a/repos/ports/recipes/raw/vbox5-nova-sculpt/init.config +++ b/repos/ports/recipes/raw/vbox5-nova-sculpt/init.config @@ -67,6 +67,8 @@ + +