X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=blobdiff_plain;f=src%2Ftype3_AndroidCloud%2Fanbox-master%2Fsrc%2Fanbox%2Fqemu%2Fboot_properties_message_processor.cpp;fp=src%2Ftype3_AndroidCloud%2Fanbox-master%2Fsrc%2Fanbox%2Fqemu%2Fboot_properties_message_processor.cpp;h=897bc007c2fd3429626b707c1cbfec99886aabb2;hb=e26c1ec581be598521517829adba8c8dd23a768f;hp=0000000000000000000000000000000000000000;hpb=6699c1aea74eeb0eb400e6299079f0c7576f716f;p=iec.git diff --git a/src/type3_AndroidCloud/anbox-master/src/anbox/qemu/boot_properties_message_processor.cpp b/src/type3_AndroidCloud/anbox-master/src/anbox/qemu/boot_properties_message_processor.cpp new file mode 100644 index 0000000..897bc00 --- /dev/null +++ b/src/type3_AndroidCloud/anbox-master/src/anbox/qemu/boot_properties_message_processor.cpp @@ -0,0 +1,50 @@ +/* + * Copyright (C) 2016 Simon Fels + * + * This program is free software: you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 3, as published + * by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranties of + * MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program. If not, see . + * + */ + +#include "anbox/qemu//boot_properties_message_processor.h" +#include "anbox/graphics/density.h" +#include "anbox/utils.h" + +namespace anbox { +namespace qemu { +BootPropertiesMessageProcessor::BootPropertiesMessageProcessor( + const std::shared_ptr &messenger) + : QemudMessageProcessor(messenger) {} + +BootPropertiesMessageProcessor::~BootPropertiesMessageProcessor() {} + +void BootPropertiesMessageProcessor::handle_command( + const std::string &command) { + if (command == "list") list_properties(); +} + +void BootPropertiesMessageProcessor::list_properties() { + std::vector properties = { + // TODO(morphis): Using HDPI here for now but should be adjusted to the + // device we're running on + utils::string_format("ro.sf.lcd_density=%d", static_cast(graphics::current_density())), + }; + + for (const auto &prop : properties) { + send_header(prop.length()); + messenger_->send(prop.c_str(), prop.length()); + } + + finish_message(); +} +} // namespace qemu +} // namespace anbox