<Swing Dev> <AWT Dev> [9] Review Request: 8143077 Deprecate InputEvent._MASK in favor of InputEvent._DOWN_MASK
Sergey Bylokhov
Sergey.Bylokhov at oracle.com
Wed Oct 19 14:43:39 UTC 2016
On 19.10.16 9:58, Semyon Sadetsky wrote:
>> On 17.10.16 21:47, Semyon Sadetsky wrote:
>>>> It can be replaced if it will be used in pair with getModifiersEx().
>>>> The old getModifiers() is also deprecated. And javadoc for
>>>> getModifiersEx() describes what and how constants should be used.
>>> Can you add link to getModifiersEx() to all those constants' specs?
>>
>> I assume you mean the new _DOWN constants not the old?
> I meant that deprecated message should be transparently explaining the
> impact of the replacement.
> The proposed specs change recommends to use a replacement which is not
> equivalent to the deprecated API. And that is the reason why you don't
> like to eliminate all old API usages in the JDK code as a part of the
> fix, if I correctly understand you previous reply in this thread.
> Since you are insisting that migrating to the new API is risky it is
> worth let the user know about that risk as well.
What does it mean risky? The new API is safe, but it is not safe to just
find+replace the old constants to the new one, because it will be
necessary to check how they are used. We already have a notions that
these "extended modifier constant" should be used in the constructor of
InputEvent and moreover in spec of getModifiersEx() we have an
additional examples how to use this constants. This is why we will have
a reference from old constans to the new, and from getModifiers() to the
getModifiersEx();
>>>>>>>>> And, please, limit the length of the changed line in VMPanel.java
>>>>>>>>> to 80
>>>>>>>>> chars.
>>>>>>>>>>
>>>>>>>>>>>>> On 10/2/2016 4:53 PM, Sergey Bylokhov wrote:
>>>>>>>>>>>>>> Thanks for the comments.
>>>>>>>>>>>>>> The new version:
>>>>>>>>>>>>>> http://cr.openjdk.java.net/~serb/8143077/webrev.01
>>>>>>>>>>>>>> The specification of Event class and
>>>>>>>>>>>>>> InputEvent.getModifiers()
>>>>>>>>>>>>>> are
>>>>>>>>>>>>>> updated.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On 30.09.16 19:08, Jonathan Bluett-Duncan wrote:
>>>>>>>>>>>>>>> Hi Sergey,
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> I'm not a reviewer, but after reading the deprecation
>>>>>>>>>>>>>>> messages in
>>>>>>>>>>>>>>> Event.java
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> * @deprecated It is recommended that {@code AWTEvent}
>>>>>>>>>>>>>>> class
>>>>>>>>>>>>>>> and
>>>>>>>>>>>>>>> its
>>>>>>>>>>>>>>> subclasses
>>>>>>>>>>>>>>> * be used instead.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> I get the impression they would read better without the
>>>>>>>>>>>>>>> redundant
>>>>>>>>>>>>>>> "class" in the middle, like so.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> * @deprecated It is recommended that {@code AWTEvent}
>>>>>>>>>>>>>>> and
>>>>>>>>>>>>>>> its
>>>>>>>>>>>>>>> subclasses
>>>>>>>>>>>>>>> * be used instead.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Kind regards,
>>>>>>>>>>>>>>> Jonathan
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On 30 September 2016 at 16:45, Sergey Bylokhov
>>>>>>>>>>>>>>> <Sergey.Bylokhov at oracle.com
>>>>>>>>>>>>>>> <mailto:Sergey.Bylokhov at oracle.com>>
>>>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Hello.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Please review the fix for jdk9.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> This is request to deprecate the obsolete flags inside
>>>>>>>>>>>>>>> InputEvent.
>>>>>>>>>>>>>>> This constants were marked as obsolete in jdk1.4 and
>>>>>>>>>>>>>>> were
>>>>>>>>>>>>>>> replaced
>>>>>>>>>>>>>>> by the new one. In jdk1.4 the documentation were update
>>>>>>>>>>>>>>> with
>>>>>>>>>>>>>>> notion
>>>>>>>>>>>>>>> that the new constants should be used. And this bug is
>>>>>>>>>>>>>>> about
>>>>>>>>>>>>>>> official deprecation of them.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> We can replace old constants by the new one in the whole
>>>>>>>>>>>>>>> jdk,
>>>>>>>>>>>>>>> but I
>>>>>>>>>>>>>>> updated only the code in InputEvent to make change
>>>>>>>>>>>>>>> smaller and
>>>>>>>>>>>>>>> safer. So at least the new code in jdk and the code in
>>>>>>>>>>>>>>> applications
>>>>>>>>>>>>>>> will start to use the new constants.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> The changes in jconsole are necessary to fix deprecation
>>>>>>>>>>>>>>> warning.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> jprt build passed, no new issues were found by jck/jtreg
>>>>>>>>>>>>>>> tests.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8143077
>>>>>>>>>>>>>>> <https://bugs.openjdk.java.net/browse/JDK-8143077>
>>>>>>>>>>>>>>> Webrev can be found at:
>>>>>>>>>>>>>>> http://cr.openjdk.java.net/~serb/8143077/webrev.00
>>>>>>>>>>>>>>> <http://cr.openjdk.java.net/~serb/8143077/webrev.00>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>> Best regards, Sergey.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>>
>>>
>>
>>
>
--
Best regards, Sergey.
More information about the swing-dev
mailing list