From a863e37eb5a1482b9383d861ed9a4ce9a9ce71c3 Mon Sep 17 00:00:00 2001 From: David Rowe Date: Fri, 30 Jun 2017 12:11:06 +1200 Subject: [PATCH] Communicate VR edit enabled state to hand controller script --- scripts/system/controllers/handControllerGrab.js | 2 +- scripts/system/edit.js | 2 +- scripts/system/libraries/utils.js | 10 +++++++--- scripts/vr-edit/vr-edit.js | 8 +++++++- 4 files changed, 16 insertions(+), 6 deletions(-) diff --git a/scripts/system/controllers/handControllerGrab.js b/scripts/system/controllers/handControllerGrab.js index 04921fe14d..77042e1ac6 100644 --- a/scripts/system/controllers/handControllerGrab.js +++ b/scripts/system/controllers/handControllerGrab.js @@ -14,7 +14,7 @@ /* global getEntityCustomData, flatten, Xform, Script, Quat, Vec3, MyAvatar, Entities, Overlays, Settings, Reticle, Controller, Camera, Messages, Mat4, getControllerWorldLocation, getGrabPointSphereOffset, - setGrabCommunications, Menu, HMD, isInEditMode, AvatarList */ + setGrabCommunications, Menu, HMD, isInEditMode, isInVREditMode, AvatarList */ /* eslint indent: ["error", 4, { "outerIIFEBody": 0 }] */ (function() { // BEGIN LOCAL_SCOPE diff --git a/scripts/system/edit.js b/scripts/system/edit.js index a83d2159bb..4dc91ac024 100644 --- a/scripts/system/edit.js +++ b/scripts/system/edit.js @@ -228,7 +228,7 @@ var GRABBABLE_ENTITIES_MENU_CATEGORY = "Edit"; var GRABBABLE_ENTITIES_MENU_ITEM = "Create Entities As Grabbable"; var toolBar = (function () { - var EDIT_SETTING = "io.highfidelity.isEditting"; // for communication with other scripts + var EDIT_SETTING = "io.highfidelity.isEditing"; // for communication with other scripts var that = {}, toolBar, activeButton = null, diff --git a/scripts/system/libraries/utils.js b/scripts/system/libraries/utils.js index a5e97d8949..0f367e0cfe 100644 --- a/scripts/system/libraries/utils.js +++ b/scripts/system/libraries/utils.js @@ -6,12 +6,16 @@ // See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html // -// note: this constant is currently duplicated in edit.js -EDIT_SETTING = "io.highfidelity.isEditting"; -isInEditMode = function isInEditMode() { +EDIT_SETTING = "io.highfidelity.isEditing"; // Note: This constant is duplicated in edit.js. +isInEditMode = function () { return Settings.getValue(EDIT_SETTING); }; +VR_EDIT_SETTING = "io.highfidelity.isVREditing"; // Note: This constant is duplicated in vr-edit.js. +isInVREditMode = function () { + return HMD.active && Settings.getValue(VR_EDIT_SETTING); +} + if (!Function.prototype.bind) { Function.prototype.bind = function(oThis) { if (typeof this !== 'function') { diff --git a/scripts/vr-edit/vr-edit.js b/scripts/vr-edit/vr-edit.js index 3a81495708..6ceb4ff7ac 100644 --- a/scripts/vr-edit/vr-edit.js +++ b/scripts/vr-edit/vr-edit.js @@ -17,14 +17,20 @@ APP_ICON_ACTIVE = "icons/tablet-icons/edit-a.svg", tablet, button, - isAppActive = false; + isAppActive = false, + + VR_EDIT_SETTING = "io.highfidelity.isVREditing"; // Note: This constant is duplicated in utils.js. + function onButtonClicked() { isAppActive = !isAppActive; + Settings.setValue(VR_EDIT_SETTING, isAppActive); button.editProperties({ isActive: isAppActive }); } function setUp() { + Settings.setValue(VR_EDIT_SETTING, isAppActive); + tablet = Tablet.getTablet("com.highfidelity.interface.tablet.system"); if (!tablet) { return;