<AWT Dev> hg: jdk7/awt/jdk: 6315717: Support for mouse with multiple scroll wheels and 4 or more buttons
Andrei V. Dmitriev
Andrei.Dmitriev at Sun.COM
Fri Sep 19 07:27:18 PDT 2008
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, <andrei.dmitriev at sun.com> 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
>>>>>
>>>>>
>>>>>
>>>>>
>>>
>>
More information about the awt-dev
mailing list