Thanks for catching that!
We got it, keep track on CR 6750288. Guys outside, as usual, you are
having a 24h timeout... the system is sneezing updating the web view. :(
Initial evaluation is like this: that's because the X decided that its
mouse has 32 buttons though I thought X standard mentions 24 as the
maximum.
Anyway, we predict a lot of people has similar environments. Attempt to
address this issue with using long type instead of int sounds safe enough.
Thanks,
Andrei
Artem Ananiev wrote:
Yes, please,
Thanks,
Artem
Denis S. Fokin wrote:
Ups...
Looks like we have a problem with the implementation.
I have got an exception
Sep 19, 2008 10:59:47 AM sun.awt.X11.XToolkit processException
WARNING: Exception on Toolkit thread
java.lang.ArrayIndexOutOfBoundsException: 24
at sun.awt.X11.XWindow.handleMotionNotify(XWindow.java:776)
at sun.awt.X11.XBaseWindow.dispatchEvent(XBaseWindow.java:1083)
at sun.awt.X11.XBaseWindow.dispatchToWindow(XBaseWindow.java:1053)
at sun.awt.X11.XToolkit.dispatchEvent(XToolkit.java:511)
at sun.awt.X11.XToolkit.run(XToolkit.java:606)
at sun.awt.X11.XToolkit.run(XToolkit.java:541)
at java.lang.Thread.run(Thread.java:674)
in the next part of the code
//this doesn't work for extra buttons because Xsystem is
sending state==0 for every extra button event.
// we can't correct it in MouseEvent class as we done it with
modifiers, because exact type (DRAG|MOVE)
// should be passed from XWindow.
//TODO: eliminate it with some other value obtained w/o AWTLock.
for (int i = 0; i < XToolkit.getNumMouseButtons(); i++){
// TODO : here is the bug in WM: extra buttons doesn't have
state!=0 as they should.
if ((i != 4) && (i != 5)) {
mouseKeyState = mouseKeyState | (xme.get_state() &
XConstants.buttonsMask[i]);
}
}
Should I file a CR?
Thank you,
Denis.
Andrei Dmitriev wrote:
Thanks!
Oleg Sukhodolsky wrote:
Congratulations!!! You have completed this project (finally ;)
On Tue, Sep 16, 2008 at 12:26 PM, <[EMAIL PROTECTED]> wrote:
Changeset: 3b9a288d7ddb
Author: dav
Date: 2008-09-16 12:17 +0400
URL: http://hg.openjdk.java.net/jdk7/awt/jdk/rev/3b9a288d7ddb
6315717: Support for mouse with multiple scroll wheels and 4 or
more buttons
Summary: implementation of the more mouse buttons support
Reviewed-by: art, dcherepanov
! make/sun/xawt/mapfile-vers
! src/share/classes/java/awt/Robot.java
! src/share/classes/java/awt/Toolkit.java
! src/share/classes/java/awt/doc-files/DesktopProperties.html
! src/share/classes/java/awt/event/InputEvent.java
! src/share/classes/java/awt/event/MouseEvent.java
! src/share/classes/java/awt/peer/RobotPeer.java
! src/share/classes/sun/awt/HeadlessToolkit.java
! src/solaris/classes/sun/awt/X11/XBaseWindow.java
! src/solaris/classes/sun/awt/X11/XConstants.java
! src/solaris/classes/sun/awt/X11/XDragSourceContextPeer.java
! src/solaris/classes/sun/awt/X11/XRobotPeer.java
! src/solaris/classes/sun/awt/X11/XToolkit.java
! src/solaris/classes/sun/awt/X11/XWindow.java
! src/solaris/classes/sun/awt/X11/XWindowPeer.java
! src/solaris/native/sun/awt/awt_Robot.c
! src/windows/classes/sun/awt/windows/WRobotPeer.java
! src/windows/classes/sun/awt/windows/WToolkit.java
! src/windows/native/sun/windows/awt_Component.cpp
! src/windows/native/sun/windows/awt_Component.h
! src/windows/native/sun/windows/awt_Robot.cpp
! src/windows/native/sun/windows/awt_Robot.h
! src/windows/native/sun/windows/awt_Toolkit.cpp
! src/windows/native/sun/windows/awt_Toolkit.h
! src/windows/native/sun/windows/awt_TrayIcon.cpp
+ test/java/awt/Mouse/MouseModifiersUnitTest/ExtraButtonDrag.java
+ test/java/awt/Mouse/MouseModifiersUnitTest/ModifierPermutation.java
+
test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersUnitTest_Extra.java
+
test/java/awt/Mouse/MouseModifiersUnitTest/MouseModifiersUnitTest_Standard.java
+
test/java/awt/Robot/AcceptExtraMouseButtons/AcceptExtraMouseButtons.java
+ test/java/awt/Robot/ManualInstructions/ManualInstructions.java
+ test/java/awt/Robot/RobotExtraButton/RobotExtraButton.java
+ test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_1.java
+ test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_2.java
+ test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_3.java
+ test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_4.java
+ test/java/awt/Toolkit/ToolkitPropertyTest/SystemPropTest_5.java
+
test/java/awt/Toolkit/ToolkitPropertyTest/ToolkitPropertyTest_Disable.java
+
test/java/awt/Toolkit/ToolkitPropertyTest/ToolkitPropertyTest_Enable.java
+
test/java/awt/event/InputEvent/ButtonArraysEquality/ButtonArraysEquality.java
+
test/java/awt/event/MouseEvent/AcceptExtraButton/AcceptExtraButton.java
+
test/java/awt/event/MouseEvent/CTORRestrictions/CTORRestrictions.java
+
test/java/awt/event/MouseEvent/CTORRestrictions/CTORRestrictions_Disable.java
+
test/java/awt/event/MouseEvent/CheckGetMaskForButton/CheckGetMaskForButton.java