Handle window movement/resize/close on our side and not in Android

This leads to much better performance and user interaction. Resizing
still has some flickering but that is a different area of problems.
This commit is contained in:
Simon Fels 2016-12-08 07:08:25 +01:00
commit 65531a3b82
17 changed files with 230 additions and 41 deletions

View file

@ -15,6 +15,8 @@
*
*/
#define LOG_TAG "Anboxd"
#include "android/service/message_processor.h"
#include "android/service/android_api_skeleton.h"
@ -35,10 +37,14 @@ MessageProcessor::~MessageProcessor() {
}
void MessageProcessor::dispatch(rpc::Invocation const& invocation) {
if (invocation.method_name() == "launch_application")
invoke(this, platform_api_.get(), &AndroidApiSkeleton::launch_application, invocation);
else if (invocation.method_name() == "set_focused_task")
invoke(this, platform_api_.get(), &AndroidApiSkeleton::set_focused_task, invocation);
if (invocation.method_name() == "launch_application")
invoke(this, platform_api_.get(), &AndroidApiSkeleton::launch_application, invocation);
else if (invocation.method_name() == "set_focused_task")
invoke(this, platform_api_.get(), &AndroidApiSkeleton::set_focused_task, invocation);
else if (invocation.method_name() == "remove_task")
invoke(this, platform_api_.get(), &AndroidApiSkeleton::remove_task, invocation);
else if (invocation.method_name() == "resize_task")
invoke(this, platform_api_.get(), &AndroidApiSkeleton::resize_task, invocation);
}
void MessageProcessor::process_event_sequence(const std::string&) {