diff --git a/src/systems/userinput/bindings/keyboard-mouse-user.js b/src/systems/userinput/bindings/keyboard-mouse-user.js index 53f1f2362d14ee52cea9bde58cee5312a390071f..9e42e5511ef5639e609b8c9c603032dc39dbfb4d 100644 --- a/src/systems/userinput/bindings/keyboard-mouse-user.js +++ b/src/systems/userinput/bindings/keyboard-mouse-user.js @@ -341,12 +341,6 @@ export const keyboardMouseUserBindings = addSetsToBindings({ dest: { value: paths.noop }, xform: xforms.noop, priority: 1000 - }, - { - src: { value: "/device/keyboard/l" }, - dest: { value: paths.actions.logDebugFrame }, - xform: xforms.rising, - priority: 1100 } ] }); diff --git a/src/systems/userinput/bindings/oculus-touch-user.js b/src/systems/userinput/bindings/oculus-touch-user.js index dcf3914192a67817bf40ad8bb318053a4633248a..275be0dfe95c9da53b5fe68e67d4dc0129281221 100644 --- a/src/systems/userinput/bindings/oculus-touch-user.js +++ b/src/systems/userinput/bindings/oculus-touch-user.js @@ -72,6 +72,16 @@ const rightTriggerPressed2 = v("rightTriggerPressed2"); export const oculusTouchUserBindings = addSetsToBindings({ [sets.global]: [ + { + src: [ensureFrozenViaButtons, ensureFrozenViaKeyboard], + dest: { value: paths.actions.ensureFrozen }, + xform: xforms.any + }, + { + src: [thawViaButtons, thawViaKeyboard], + dest: { value: paths.actions.thaw }, + xform: xforms.any + }, { src: { value: leftButton("grip").pressed @@ -781,30 +791,12 @@ export const oculusTouchUserBindings = addSetsToBindings({ ], [sets.rightHandHoveringOnNothing]: [], - [sets.globalPost]: [ - { - src: [ensureFrozenViaButtons, ensureFrozenViaKeyboard], - dest: { value: paths.actions.ensureFrozen }, - xform: xforms.any - }, - { - src: [thawViaButtons, thawViaKeyboard], - dest: { value: paths.actions.thaw }, - xform: xforms.any - } - ], [sets.inputFocused]: [ { src: { value: "/device/keyboard" }, dest: { value: paths.noop }, xform: xforms.noop, priority: 1000 - }, - { - src: { value: "/device/keyboard/l" }, - dest: { value: paths.actions.logDebugFrame }, - xform: xforms.rising, - priority: 1100 } ] }); diff --git a/src/systems/userinput/bindings/vive-user.js b/src/systems/userinput/bindings/vive-user.js index 014c04853cb041dabcf25240244229dce9c972c4..e3a8e5d3939adab11ab555526635ea80c12a0ce1 100644 --- a/src/systems/userinput/bindings/vive-user.js +++ b/src/systems/userinput/bindings/vive-user.js @@ -87,6 +87,16 @@ const leftGripFallingWhileHoldingPen = v("leftGripFallingWhileHoldingPen"); export const viveUserBindings = addSetsToBindings({ [sets.global]: [ + { + src: [ensureFrozenViaDpad, ensureFrozenViaKeyboard], + dest: { value: paths.actions.ensureFrozen }, + xform: xforms.any + }, + { + src: [thawViaDpad, thawViaKeyboard], + dest: { value: paths.actions.thaw }, + xform: xforms.any + }, { src: { value: lButton("grip").pressed @@ -938,17 +948,5 @@ export const viveUserBindings = addSetsToBindings({ xform: xforms.falling, priority: 3 } - ], - [sets.globalPost]: [ - { - src: [ensureFrozenViaDpad, ensureFrozenViaKeyboard], - dest: { value: paths.actions.ensureFrozen }, - xform: xforms.any - }, - { - src: [thawViaDpad, thawViaKeyboard], - dest: { value: paths.actions.thaw }, - xform: xforms.any - } ] }); diff --git a/src/systems/userinput/devices/app-aware-mouse.js b/src/systems/userinput/devices/app-aware-mouse.js index de5f4acecdfe6ca4ba0400878f078c770c9c455a..4ceb23763baecb2105a08a3aa6fd2baffa965159 100644 --- a/src/systems/userinput/devices/app-aware-mouse.js +++ b/src/systems/userinput/devices/app-aware-mouse.js @@ -32,6 +32,7 @@ export class AppAwareMouseDevice { } const buttonLeft = frame[paths.device.mouse.buttonLeft]; + const buttonRight = frame[paths.device.mouse.buttonRight]; if (buttonLeft && !this.prevButtonLeft) { const rawIntersections = []; this.cursorController.raycaster.intersectObjects(this.cursorController.targets, true, rawIntersections); @@ -50,7 +51,7 @@ export class AppAwareMouseDevice { this.clickedOnAnything = false; } - if (!this.clickedOnAnything && buttonLeft) { + if ((!this.clickedOnAnything && buttonLeft) || buttonRight) { frame[paths.device.smartMouse.cameraDelta] = frame[paths.device.mouse.movementXY]; } diff --git a/src/systems/userinput/paths.js b/src/systems/userinput/paths.js index 7f38c58cbefcd40e9f9b08c0e47114f6ebab3ee2..d29de98850865fcad38a24dc911553a48e8268a1 100644 --- a/src/systems/userinput/paths.js +++ b/src/systems/userinput/paths.js @@ -1,7 +1,6 @@ export const paths = {}; paths.noop = "/noop"; paths.actions = {}; -paths.actions.log = "/actions/log"; paths.actions.toggleScreenShare = "/actions/toggleScreenShare"; paths.actions.snapRotateLeft = "/actions/snapRotateLeft"; paths.actions.snapRotateRight = "/actions/snapRotateRight"; diff --git a/src/systems/userinput/resolve-action-sets.js b/src/systems/userinput/resolve-action-sets.js index 5c2a3886939f71d83a1ee0a761d37c2a3e0813d8..7ec2d144025f633c1bac7f59106642425aaac7cf 100644 --- a/src/systems/userinput/resolve-action-sets.js +++ b/src/systems/userinput/resolve-action-sets.js @@ -98,24 +98,18 @@ export function resolveActionSets() { cursorHand.has("hover-start") && cursorHand.get("hover-start").matches(".pen, .pen *"); const cursorHoldingInteractable = - cursorController.enabled && !rightHandTeleporting && cursorHand.has("grab-start") && cursorHand.get("grab-start").matches(".interactable, .interactable *"); const cursorHoldingPen = - cursorController.enabled && - !rightHandTeleporting && - cursorHand.has("grab-start") && - cursorHand.get("grab-start").matches(".pen, .pen *"); + !rightHandTeleporting && cursorHand.has("grab-start") && cursorHand.get("grab-start").matches(".pen, .pen *"); const cursorHoldingCamera = - cursorController.enabled && !rightTeleporter.active && cursorHand.has("grab-start") && cursorHand.get("grab-start").matches(".icamera, .icamera *"); const cursorHoveringOnNothing = - cursorController.enabled && !rightHandTeleporting && !rightHandHovering && !rightHandGrabbing && diff --git a/src/systems/userinput/sets.js b/src/systems/userinput/sets.js index 293179f1bb998d3bb4f780c71ae2016241bba78b..e29d0489e0d091edf40ec8746d782237b3fa263c 100644 --- a/src/systems/userinput/sets.js +++ b/src/systems/userinput/sets.js @@ -25,4 +25,3 @@ sets.leftHandHoldingPen = "leftHandHoldingPen"; sets.leftHandHoldingCamera = "leftHandHoldingCamera"; sets.leftHandHoldingInteractable = "leftHandHoldingInteractable"; sets.leftHandHoveringOnNothing = "leftHandHoveringOnNothing"; -sets.globalPost = "globalPost"; diff --git a/src/systems/userinput/userinput-debug.js b/src/systems/userinput/userinput-debug.js index 73e30e3db8d7e4d6686ef24e0fb9339b62eb58c5..20cdb45606f58867f58f69b851dbdde687f8fe47 100644 --- a/src/systems/userinput/userinput-debug.js +++ b/src/systems/userinput/userinput-debug.js @@ -7,7 +7,7 @@ AFRAME.registerSystem("userinput-debug", { return; } const userinput = AFRAME.scenes[0].systems.userinput; - if (userinput.get(paths.actions.logDebugFrame) || userinput.get(paths.actions.log)) { + if (userinput.get(paths.actions.logDebugFrame)) { console.log(userinput); console.log("sorted", userinput.sortedBindings); console.log("actives", userinput.actives); diff --git a/src/systems/userinput/userinput.js b/src/systems/userinput/userinput.js index bea1f9b7de43688c448092382cb21e7cfd70deed..c813552c6a8f8dc4b15ae733e6f573ab66a0c59c 100644 --- a/src/systems/userinput/userinput.js +++ b/src/systems/userinput/userinput.js @@ -156,7 +156,7 @@ AFRAME.registerSystem("userinput", { init() { this.frame = {}; - this.activeSets = new Set([sets.global, sets.globalPost]); + this.activeSets = new Set([sets.global]); this.pendingSetChanges = []; this.xformStates = new Map(); this.activeDevices = new Set([new MouseDevice(), new AppAwareMouseDevice(), new KeyboardDevice(), new HudDevice()]);