History

pointerevents are working!

SamGondelman committed 7 years ago

Commit 8f0bd241 parent abd7d6b9 files · +118 −130Browse files

Showing the changes to interface/src/Application.cpp (1 of 9 files). Show all

Unified · Split

interface/src/Application.cpp+12−2
@@ -1884,6 +1884,16 @@ Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer, bo · 1883 unmodified lines
18841884 }
18851885 }
18861886 });
1887+ connect(&_overlays, &Overlays::mousePressOnOverlay, [this](const QUuid& id, const PointerEvent& event) {
1888+ if (event.shouldFocus()) {
1889+ if (getEntities()->wantsKeyboardFocus(id)) {
1890+ setKeyboardFocusLocalEntity(id);
1891+ setKeyboardFocusEntity(UNKNOWN_ENTITY_ID);
1892+ } else {
1893+ setKeyboardFocusLocalEntity(UNKNOWN_ENTITY_ID);
1894+ }
1895+ }
1896+ });
18871897
18881898 connect(entityScriptingInterface.data(), &EntityScriptingInterface::deletingEntity, [this](const EntityItemID& entityItemID) {
18891899 if (entityItemID == _keyboardFocusedEntity.get()) {
@@ -5729,7 +5739,7 @@ void Application::setKeyboardFocusHighlight(const glm::vec3& position, const glm · 3839 unmodified lines
57295739 properties.getPulse().setMax(1.0f);
57305740 properties.getPulse().setColorMode(PulseMode::IN_PHASE);
57315741 properties.setIgnorePickIntersection(true);
5732− _keyboardFocusHighlightID = entityScriptingInterface->addEntity(properties, QString("local"));
5742+ _keyboardFocusHighlightID = entityScriptingInterface->addEntityInternal(properties, entity::HostType::LOCAL);
57335743 }
57345744
57355745 // Position focus
@@ -8760,7 +8770,7 @@ void Application::createLoginDialog() { · 3024 unmodified lines
87608770 properties.setVisible(true);
87618771
87628772 auto entityScriptingInterface = DependencyManager::get<EntityScriptingInterface>();
8763− _loginDialogID = entityScriptingInterface->addEntity(properties, QString("local"));
8773+ _loginDialogID = entityScriptingInterface->addEntityInternal(properties, entity::HostType::LOCAL);
87648774
87658775 auto keyboard = DependencyManager::get<Keyboard>().data();
87668776 if (!keyboard->getAnchorID().isNull() && !_loginDialogID.isNull()) {