summaryrefslogtreecommitdiff
path: root/graphics/osg34/files/patch-shift-key-fix
diff options
context:
space:
mode:
authorDmitry Marakasov <amdmi3@FreeBSD.org>2019-12-09 21:07:13 +0000
committerDmitry Marakasov <amdmi3@FreeBSD.org>2019-12-09 21:07:13 +0000
commit4dd43e1d9d65d659a8f4edc773a37de0eb190be1 (patch)
tree677be85d6f469ca92738c3dae6b4aaf35846b03a /graphics/osg34/files/patch-shift-key-fix
parentDocument Ghostscript vulnerabilities. (diff)
- Move graphics/osg to graphics/osg34 in preparation for update to 3.6
PR: 230442
Notes
Notes: svn path=/head/; revision=519633
Diffstat (limited to 'graphics/osg34/files/patch-shift-key-fix')
-rw-r--r--graphics/osg34/files/patch-shift-key-fix23
1 files changed, 23 insertions, 0 deletions
diff --git a/graphics/osg34/files/patch-shift-key-fix b/graphics/osg34/files/patch-shift-key-fix
new file mode 100644
index 000000000000..87d9003ae693
--- /dev/null
+++ b/graphics/osg34/files/patch-shift-key-fix
@@ -0,0 +1,23 @@
+# Shift key not released if group switch is something other than Control-Shift:
+# https://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg1218650.html
+
+--- src/osgGA/EventQueue.cpp.orig
++++ src/osgGA/EventQueue.cpp
+@@ -337,7 +337,7 @@ void EventQueue::mouseButtonRelease(floa
+
+ void EventQueue::keyPress(int key, double time, int unmodifiedKey)
+ {
+- switch(key)
++ switch(unmodifiedKey)
+ {
+ case(GUIEventAdapter::KEY_Shift_L): _accumulateEventState->setModKeyMask(GUIEventAdapter::MODKEY_LEFT_SHIFT | _accumulateEventState->getModKeyMask()); break;
+ case(GUIEventAdapter::KEY_Shift_R): _accumulateEventState->setModKeyMask(GUIEventAdapter::MODKEY_RIGHT_SHIFT | _accumulateEventState->getModKeyMask()); break;
+@@ -381,7 +381,7 @@ void EventQueue::keyPress(int key, doubl
+
+ void EventQueue::keyRelease(int key, double time, int unmodifiedKey)
+ {
+- switch(key)
++ switch(unmodifiedKey)
+ {
+ case(GUIEventAdapter::KEY_Shift_L): _accumulateEventState->setModKeyMask(~GUIEventAdapter::MODKEY_LEFT_SHIFT & _accumulateEventState->getModKeyMask()); break;
+ case(GUIEventAdapter::KEY_Shift_R): _accumulateEventState->setModKeyMask(~GUIEventAdapter::MODKEY_RIGHT_SHIFT & _accumulateEventState->getModKeyMask()); break;