* Remove Escape keybind; move gui keybind to F2
* Clear up keybinds properly
* Workaround for CEF focus bug
* Add TODO comment
* Guard against null ptr dereferencing
* Remove shift tab
* add additional keyboard mapping from glfw to cef
* Change dashboards to make prototype for first user test
* add mission added/removed event, disptached when a mission has been loaded/unloaded
* send missions as map instaed of array, rename missionName -> name
* Set keybind for toggling overlays to shift+f2
* Remove property for showing the title in the gui skybrowser module
* Remove default setting for skybrowser
* First implementation of setting the ui panel visibility from the launcher
* Add profile topic
* Coding style adjustment
* Add markNodes to the profiletopic
* Change format of additional data of options in engine
* Address PR comments
* map escape key from glfw to cef correctly
* fix issue with "Enter" key not working on buttons and other input fields in CEF
* Add test for new profile version
* Send skybrowser data although we are outside the solar system
* Update webgui to new ui
* Add name to profile topic
* Add cef variable to javascript context for when browser is in cef
* Use camelcase for cef variable
* Rewrite shortcuts topic to ActionKeybind and pass data in a better way (#3590)
* Rewrite shortcuts topic to ActionKeybind and pass data in a better way
* Fix strange error with file structure
* Address PR comments
* Address PR comments
* Address PR comments
* Make numbers in asset file prettier
* Rename name to identifier for missions event
* Clean up browser code
* Update UI hash (to fix the actions panel not working)
And update outdated comment. The backend is not part of this
* Feature/notify meta data change (#3605)
* Add notifyMetaDataChangeListener to topic
* First round of clean up the data passing
* Convert from string to json for metadata
* Update additional data to json
* Use nlohmann::json for additional data
* Pass meta data in new structure to topics
* Remove meta data method
* Fix mistake in merge
* Update src/properties/property.cpp
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* remove TODO comment that will be fixed by this PR
* Address PR comments
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Emma Broman <emma.broman@liu.se>
* Address PR comment
* Remove function for setting the endpoint
* Update frontend hash
* Remove enabled property from exoplanets module
* Remove enabled property from skybrowser module
* Update default UI panels json
* Remove setting of enabled properties for skybrowser and exoplanets
* Update gui hash
* Auto format json
---------
Co-authored-by: Andreas Engberg <adde.engberg@gmail.com>
Co-authored-by: Emma Broman <emma.broman@liu.se>
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
Co-authored-by: Alexander Bock <mail@alexanderbock.eu>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
- Remove toStringConversion function and move json_helper include out of numericalproperty.inl
- Optimizing some header files
- Remove duplicate Lua functions from properties.
- Move List,Option,Selection,String, and TriggerProperty into misc folder
- Move lua_helper include out of inline file
- Add lua_helper to the precompiled header
- Declare property functions as final. No longer have OptionProperty derive from IntProperty
- Remove Dictionary header from properties
* Update CEF version number
* Set OpenSpace_Helper version of C++ to 20
* Update C++ syntax to v 20
* Remove deprecated function (now default)
* Set the cache folder for cef
* Make static function in webbrowsermodule that determines if we can use accelerated rendering
* Add flag for accelerated rendering to webrenderhandler
* Use accelerated rendering
* Implement function to see if gui should absorb click
* Adhere to 80 char linewidth
* Make only the UI GPU accelerated
* Use dirty rects size for the texture to remove crash
* Better comments
* Make has content function work for GPU acceleration
* Make it so all browsers can be accelerated
Tried making it so only the gui was accelerated for simplicity. Performance plummeted, so reverted that
* Tidy up
* Add accelerated rendering flag to the screenspacerenderable shader
* Add temporary fix to make the sky browser work
* Remove flag from gui render handler
* Enable webgl in a nicer way
* Unbind texture in screenspacerenderable
* Add better comments for error handling
* Tidy up
* Address PR comments
* Make the acceleration Windows only
* Remove unnecessary setting of shader dictionary
* Add display handler to browser client
* Make glfw change mouse cursor depending on cef cursor
* formatting
* Add switch to main
* Update modules/webbrowser/src/browserclient.cpp
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* Address comments on PR
* Update again
* Update modules/webbrowser/src/browserclient.cpp
Co-authored-by: Emma Broman <emma.broman@liu.se>
* Address PR comments
---------
Co-authored-by: Ylva Selling <ylva.selling@liu.se>
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
Co-authored-by: Emma Broman <emma.broman@liu.se>
* Update CEF version number
* Set OpenSpace_Helper version of C++ to 20
* Update C++ syntax to v 20
* Remove deprecated function (now default)
* Set the cache folder for cef
* Make static function in webbrowsermodule that determines if we can use accelerated rendering
* Add flag for accelerated rendering to webrenderhandler
* Use accelerated rendering
* Implement function to see if gui should absorb click
* Adhere to 80 char linewidth
* Make only the UI GPU accelerated
* Use dirty rects size for the texture to remove crash
* Better comments
* Make has content function work for GPU acceleration
* Make it so all browsers can be accelerated
Tried making it so only the gui was accelerated for simplicity. Performance plummeted, so reverted that
* Tidy up
* Add accelerated rendering flag to the screenspacerenderable shader
* Add temporary fix to make the sky browser work
* Remove flag from gui render handler
* Enable webgl in a nicer way
* Unbind texture in screenspacerenderable
* Add better comments for error handling
* Tidy up
* Address PR comments
* Make the acceleration Windows only
* Remove unnecessary setting of shader dictionary
* Allow web dev tools to connect to CEF
* Update modules/webbrowser/include/browserinstance.h
Co-authored-by: Emma Broman <emma.broman@liu.se>
* Update modules/webbrowser/include/webrenderhandler.h
Co-authored-by: Emma Broman <emma.broman@liu.se>
* Apply suggestions from code review
Co-authored-by: Emma Broman <emma.broman@liu.se>
---------
Co-authored-by: Ylva Selling <ylva.selling@liu.se>
Co-authored-by: Emma Broman <emma.broman@liu.se>
* Apply the hue, value, saturation, and gamma values from the renderengine to screenspace renderables. Change the screenspace's own gamma value into an offset
* Make it clearer that the gamma correction is now an offset
* Add action manager to handle actions in replacement of keyboard shortcuts
* Implement new Action concept
* Remove the shortcutscomponent as it is no longer needed
* Update profile version from 1.0 to 1.1
* Add action dialog
* Restructure of key specification in keys.h
* Remove solid field-of-view keybind from the newhorizons profile as the setting no longer exists
General CMake cleanup/overhaul
* Enable precompiled headers for all projects
* Move specifications itto separate CMakeLists files
* Add openspace-core as a subdirectory
* Move handle_modules functionality into modules/CMakeLists.txt
* Move handleapplications logic into apps/CMakeLists.txt
* Introduce openspace-module-collection interface library to simplify inclusion of modules in applications
* Turn module initialization into a two-step process to adapt to the new minimal dependency scenario
* Compile time speedup
* Remove circular dependencies between modules and core preventing multithreaded compilation on MSVC
* Build Spice multithreaded and as static library
* Remove dependency from core to module-webbrowser
* Remove unused dependency from kameleon
* Remove additional unnecessary dependencies
* Cleanup volume/kameleon/kameleonvolume modules
* Fix visibility issues. Restrict include paths
* Compile kameleon in parallel
* Other cleanup
* Only copy CEF files from one target (hard-coded to OpenSpace right now)
* Remove unused instrumentation code
* Remove the ability to render AABB for globes as it caused a circular dependency between GlobeBrowsing and Debugging
* Removing compiler and cppcheck warnings
* Turn almost all includes into non-system includes
* Don't warn on deprecrated copy
* Updated submodules
* Removal of dead code and compiler warnings
* Added basic internal touch
This commit only adds the description-shell of the touch implementation
* Added callbacks and first WIP of internal touch
Makes use of the TouchInput/TouchInputs class in the TouchModule.
Internally we cache the TouchInputs as an input deque and utilizes it
for motion-vectors.
This commit has bugs and issues, which will be worked upon.
* Happy new year!
Bumped year on branch-local files
* Improvements to internal touch
Almost reached feature-parity with tuio-handled touch events
- Added most of the touch-logic to touchinteraction
- Added helper functions to new TouchInput/TouchInputs classes
* Naming changes to touch interface
* Translate TUIO to TouchInput
This commit translates TUIO messages to an internal TouchInput structure
while still trying to keep feature parity.
Removed TUIO-dependencies from many files.
Changed behavior on tuioear to lock-swap its content.
* Minor cleanup and fixes
- Should fix touch roll
- Simplified some functions
* Build fix
* Use internal touch in webgui
- Added consume-logic to touch callbacks
- Constrained touch-input to either webgui or 3D application as mouse is
- This fixes some flaws with previous implementation,
such as ghost inputs
- Initialize touchmodule through init-functions rather than constructor
* Cleanup of comments
* Simplified touch classes
Added timestamp through constructor meaning no more sprinkled timestamps
Renamed TouchInputs to TouchInputHolder for clarity
Added helper functions to the Holder to see if it holds an input
Remade addInput as tryAddInput which return true on successful insertion
+ other cleanup
* Code style cleanup and tweaks
Removed avoidable zero-comparison for code clarity
Cleanup of code style
* Added comments to DirectInputSolver
Clarifying the use of the DirectInputSolver.
* Changes for coding style
Change SGCT version to make it checkout-able
* Clarify magic bitmask
* const -> constexpr const for magic bitmasks
Co-authored-by: Alexander Bock <mail@alexanderbock.eu>