Feature/cef speedup (#806)

* Improve cmake errors
  * Calling doMessageLoopWork more often to increase gui performance
  * Introduce frequent callbacks
  * Restructure browser update callbacks
  * Cleanup cef speedup
  * Add flag to toggle updating browser between renderable calls
  * CEF should not be used in single process mode
  * Update CEF version
  * Postbuild step for finding framework from web helper
  * Load libcef dynamically to fix issue with CEF update
  * Only include dynamic library loader on mac
  * Improve keyboard mapping support on MacOS
  * Add arrow keys
  * Rename manifest
  * Fix bug with missing blinking cursor in text fields
  * Bump minimum cmake version
  * CEF fixes: Runtime and correct helper path
  * Be true to actual sandbox compatibility specified by CEF
  * Cleanup
This commit is contained in:
Emil Axelsson
2019-04-24 10:53:46 +02:00
committed by Alexander Bock
parent ba1aaa1672
commit 0dcf65ce4f
47 changed files with 498 additions and 145 deletions
+5 -4
View File
@@ -25,9 +25,6 @@
#include <openspace/engine/globals.h>
#include <modules/touch/include/touchinteraction.h>
#include <modules/imgui/imguimodule.h>
#ifdef OPENSPACE_MODULE_WEBBROWSER_ENABLED
#include <modules/webbrowser/webbrowsermodule.h>
#endif
#include <openspace/interaction/orbitalnavigator.h>
#include <openspace/engine/globals.h>
@@ -49,6 +46,10 @@
#include <modules/globebrowsing/src/renderableglobe.h>
#endif
#ifdef OPENSPACE_MODULE_WEBBROWSER_ENABLED
#include <modules/webbrowser/webbrowsermodule.h>
#endif
#include <cmath>
#include <ghoul/fmt.h>
#include <functional>
@@ -432,13 +433,13 @@ void TouchInteraction::updateStateFromInput(const std::vector<TuioCursor>& list,
}
bool TouchInteraction::webContent(const std::vector<TuioCursor>& list) {
#ifdef OPENSPACE_MODULE_WEBBROWSER_ENABLED
glm::ivec2 res = global::windowDelegate.currentWindowSize();
glm::dvec2 pos = glm::vec2(
list.at(0).getScreenX(res.x),
list.at(0).getScreenY(res.y)
);
#ifdef OPENSPACE_MODULE_WEBBROWSER_ENABLED
WebBrowserModule& module = *(global::moduleEngine.module<WebBrowserModule>());
return module.eventHandler().hasContentCallback(pos.x, pos.y);
#else