ports/85997: java/jdk15 1.5.0p1_3 causes keyboard problems with
NumLock enabled
Kurt Miller
lists at intricatesoftware.com
Wed Apr 19 22:40:28 UTC 2006
The following reply was made to PR ports/85997; it has been noted by GNATS.
From: Kurt Miller <lists at intricatesoftware.com>
To: bug-followup at freebsd.org, kwlogical at bellsouth.net
Cc:
Subject: Re: ports/85997: java/jdk15 1.5.0p1_3 causes keyboard problems with
NumLock enabled
Date: Wed, 19 Apr 2006 18:35:17 -0400
This patch fixes the numlock problems described in this PR
for both toolkits:
Index: j2se/src/solaris/native/sun/awt/canvas.c
===================================================================
RCS file: /home/Java/CVS/JDK2/javasrc_1_5_scsl/j2se/src/solaris/native/sun/awt/canvas.c,v
retrieving revision 1.2
diff -u -r1.2 canvas.c
--- j2se/src/solaris/native/sun/awt/canvas.c 10 Jan 2005 15:09:40 -0000 1.2
+++ j2se/src/solaris/native/sun/awt/canvas.c 19 Apr 2006 22:21:51 -0000
@@ -258,10 +258,10 @@
{java_awt_event_KeyEvent_VK_DOWN, XK_Down, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_STANDARD},
/* Keypad equivalents of Triangular Navigation Block */
- {java_awt_event_KeyEvent_VK_KP_LEFT, XK_KP_Left, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_NUMPAD},
- {java_awt_event_KeyEvent_VK_KP_UP, XK_KP_Up, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_NUMPAD},
- {java_awt_event_KeyEvent_VK_KP_RIGHT, XK_KP_Right, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_NUMPAD},
- {java_awt_event_KeyEvent_VK_KP_DOWN, XK_KP_Down, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_NUMPAD},
+ {java_awt_event_KeyEvent_VK_LEFT, XK_KP_Left, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_NUMPAD},
+ {java_awt_event_KeyEvent_VK_UP, XK_KP_Up, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_NUMPAD},
+ {java_awt_event_KeyEvent_VK_RIGHT, XK_KP_Right, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_NUMPAD},
+ {java_awt_event_KeyEvent_VK_DOWN, XK_KP_Down, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_NUMPAD},
/* Other vendor-specific Triangular Navigation Block */
{java_awt_event_KeyEvent_VK_LEFT, osfXK_Left, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_STANDARD},
@@ -1349,7 +1349,7 @@
{
KeySym originalKeysym = *keysym;
-#if !defined(__linux__) // XXXBSD: applies to FreeBSD?
+#if !defined(__linux__) && !defined(_ALLBSD_SOURCE)
/* The following code on Linux will cause the keypad keys
* not to echo on JTextField when the NumLock is on. The
* keysyms will be 0, because the last parameter 2 is not defined.
Index: j2se/src/solaris/native/sun/xawt/XWindow.c
===================================================================
RCS file: /home/Java/CVS/JDK2/javasrc_1_5_scsl/j2se/src/solaris/native/sun/xawt/XWindow.c,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 XWindow.c
--- j2se/src/solaris/native/sun/xawt/XWindow.c 8 Nov 2004 22:27:40 -0000 1.1.1.1
+++ j2se/src/solaris/native/sun/xawt/XWindow.c 19 Apr 2006 22:21:51 -0000
@@ -204,10 +204,10 @@
{java_awt_event_KeyEvent_VK_DOWN, XK_Down, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_STANDARD},
/* Keypad equivalents of Triangular Navigation Block */
- {java_awt_event_KeyEvent_VK_KP_LEFT, XK_KP_Left, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_NUMPAD},
- {java_awt_event_KeyEvent_VK_KP_UP, XK_KP_Up, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_NUMPAD},
- {java_awt_event_KeyEvent_VK_KP_RIGHT, XK_KP_Right, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_NUMPAD},
- {java_awt_event_KeyEvent_VK_KP_DOWN, XK_KP_Down, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_NUMPAD},
+ {java_awt_event_KeyEvent_VK_LEFT, XK_KP_Left, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_NUMPAD},
+ {java_awt_event_KeyEvent_VK_UP, XK_KP_Up, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_NUMPAD},
+ {java_awt_event_KeyEvent_VK_RIGHT, XK_KP_Right, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_NUMPAD},
+ {java_awt_event_KeyEvent_VK_DOWN, XK_KP_Down, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_NUMPAD},
/* Other vendor-specific Triangular Navigation Block */
{java_awt_event_KeyEvent_VK_LEFT, osfXK_Left, FALSE, java_awt_event_KeyEvent_KEY_LOCATION_STANDARD},
@@ -742,7 +742,7 @@
{
KeySym originalKeysym = *keysym;
-#ifndef __linux__
+#if !defined(__linux__) && !defined(_ALLBSD_SOURCE)
/* The following code on Linux will cause the keypad keys
* not to echo on JTextField when the NumLock is on. The
* keysyms will be 0, because the last parameter 2 is not defined.
More information about the freebsd-java
mailing list