Browse Source

add getModifiers input helper

Alexander Rose 5 years ago
parent
commit
50e2d542df
1 changed files with 10 additions and 1 deletions
  1. 10 1
      src/mol-util/input/input-observer.ts

+ 10 - 1
src/mol-util/input/input-observer.ts

@@ -10,7 +10,7 @@ import { Vec2 } from '../../mol-math/linear-algebra';
 
 import { BitFlags, noop } from '../../mol-util';
 
-function getButtons(event: MouseEvent | Touch) {
+export function getButtons(event: MouseEvent | Touch) {
     if (typeof event === 'object') {
         if ('buttons' in event) {
             return event.buttons
@@ -37,6 +37,15 @@ function getButtons(event: MouseEvent | Touch) {
     return 0
 }
 
+export function getModifiers(event: MouseEvent | Touch) {
+    return {
+        alt: 'altKey' in event ? event.altKey : false,
+        shift: 'shiftKey' in event ? event.shiftKey : false,
+        control: 'ctrlKey' in event ? event.ctrlKey : false,
+        meta: 'metaKey' in event ? event.metaKey : false
+    }
+}
+
 export const DefaultInputObserverProps = {
     noScroll: true,
     noContextMenu: true,