From 50e2d542df4b7540bfb3030d3707b095d1ae4774 Mon Sep 17 00:00:00 2001
From: Alexander Rose <alex.rose@rcsb.org>
Date: Mon, 17 Jun 2019 14:33:32 -0700
Subject: [PATCH] add getModifiers input helper

---
 src/mol-util/input/input-observer.ts | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/src/mol-util/input/input-observer.ts b/src/mol-util/input/input-observer.ts
index a488deb08..eb6f01e80 100644
--- a/src/mol-util/input/input-observer.ts
+++ b/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,
-- 
GitLab