[Scummvm-cvs-logs] CVS: scummvm/backends/dc input.cpp,1.4,1.5

Marcus Comstedt marcus_c at users.sourceforge.net
Thu Dec 5 17:31:09 CET 2002


Update of /cvsroot/scummvm/scummvm/backends/dc
In directory sc8-pr-cvs1:/tmp/cvs-serv31595

Modified Files:
	input.cpp 
Log Message:
Generate KEY_UP events as well...

Index: input.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/backends/dc/input.cpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- input.cpp	18 Oct 2002 01:43:55 -0000	1.4
+++ input.cpp	6 Dec 2002 01:30:38 -0000	1.5
@@ -126,9 +126,12 @@
     return -OSystem::EVENT_RBUTTONUP;
   }
 
-  if(!newkey)
+  if(!newkey || (lastkey && newkey != lastkey)) {
+    int upkey = lastkey;
     lastkey = 0;
-  else if(newkey != lastkey)
+    if(upkey)
+      return upkey | (1<<30);
+  } else if(!lastkey)
     return lastkey = newkey;
 
   return 0;
@@ -157,7 +160,8 @@
     event->event_code = -e;
     return true;
   } else if(e>0) {
-    event->event_code = EVENT_KEYDOWN;
+    event->event_code = ((e&(1<<30))? EVENT_KEYUP : EVENT_KEYDOWN);
+    e &= ~(1<<30);
     event->kbd.keycode = e;
     event->kbd.ascii = (e>='a' && e<='z' && (event->kbd.flags & KBD_SHIFT)?
 			e &~ 0x20 : e);





More information about the Scummvm-git-logs mailing list