emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r116451: * nsterm.m (keyDown:): Check for normal key


From: Jan D.
Subject: [Emacs-diffs] trunk r116451: * nsterm.m (keyDown:): Check for normal key even if NSNumericPadKeyMask
Date: Sun, 16 Feb 2014 09:51:43 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 116451
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/16505
author: Anders Lindgern <address@hidden>
committer: Jan Djärv <address@hidden>
branch nick: trunk
timestamp: Sun 2014-02-16 10:51:41 +0100
message:
  * nsterm.m (keyDown:): Check for normal key even if NSNumericPadKeyMask
  is set.
modified:
  src/ChangeLog                  changelog-20091113204419-o5vbwnq5f7feedwu-1438
  src/nsterm.m                   nsterm.m-20091113204419-o5vbwnq5f7feedwu-8747
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2014-02-16 05:43:44 +0000
+++ b/src/ChangeLog     2014-02-16 09:51:41 +0000
@@ -1,3 +1,8 @@
+2014-02-16  Anders Lindgern <address@hidden>
+
+       * nsterm.m (keyDown:): Check for normal key even if NSNumericPadKeyMask
+       is set (Bug#16505).
+
 2014-02-16  Daniel Colascione  <address@hidden>
 
        * dbusbind.c (xd_lisp_dbus_to_dbus): New function.

=== modified file 'src/nsterm.m'
--- a/src/nsterm.m      2014-02-10 22:15:54 +0000
+++ b/src/nsterm.m      2014-02-16 09:51:41 +0000
@@ -5119,9 +5119,17 @@
       /* (Carbon way: [theEvent keyCode]) */
 
       /* is it a "function key"? */
-      fnKeysym = (code < 0x00ff && (flags&NSNumericPadKeyMask))
-       ? ns_convert_key ([theEvent keyCode] | NSNumericPadKeyMask)
-       : ns_convert_key (code);
+      /* Note: Sometimes a plain key will have the NSNumericPadKeyMask
+         flag set (this is probably a bug in the OS).
+      */
+      if (code < 0x00ff && (flags&NSNumericPadKeyMask))
+        {
+          fnKeysym = ns_convert_key ([theEvent keyCode] | NSNumericPadKeyMask);
+        }
+      if (fnKeysym == 0)
+        {
+          fnKeysym = ns_convert_key (code);
+        }
 
       if (fnKeysym)
         {


reply via email to

[Prev in Thread] Current Thread [Next in Thread]