<AWT Dev> [9] Review Request: 8074757 Remove java.awt.Toolkit methods which return peer types
Anton V. Tarasov
anton.tarasov at oracle.com
Mon Apr 13 08:44:57 UTC 2015
Hi Sergey,
I'm fine with it.
Regards,
Anton.
On 10.04.2015 18:08, Sergey Bylokhov wrote:
> Hello,
> The new version of the fix:
> - @deprecated tag was removed
> - the message was changed to "UI components are unsupported by: " + toolkit
> http://cr.openjdk.java.net/~serb/8074757/webrev.05
>
> On 10.04.15 11:52, Anton V. Tarasov wrote:
>> On 07.04.2015 17:28, Sergey Bylokhov wrote:
>>> On 03.04.15 20:14, Phil Race wrote:
>>>> It does not need to be deprecated. It can be 'undeprecated' It was deprecated only because
>>>> it was the public Toolkit method that is now gone ..
>>> Ok, I'll update it.
>>>> So perhaps there's just a small adjustment needed in the case of where we use createComponent() ??
>>> It is used in 3 places:
>>> - Indirectly in Canvas and Panel where our headless toolkits creates NullComponentPeer instead
>>> of the native peer. So the question is this is implementation detail of our headless toolkit or
>>> all such toolkits should use the same things.
>>> - In Component class I can reuse NullComponentPeer, but it is unclear how we survive this later
>>> when external tollkit is in use.
>>>
>>> If nobody objects then I suggest for now to use this new error as an assertion to find possible
>>> usage of these methods, instead of silent usage of some empty stub, and fail sometime later with
>>> unclear reason.
>>
>> Hi Sergey,
>>
>> I don't object throwing AWTError. However, if we still claim to support external toolkits at
>> least in headless env, then doesn't it make sense to clarify the error message?
>>
>> + throw new AWTError("Unsupported toolkit: " + toolkit);
>>
>> to something like "Unsupported headful toolkit" or "Only headless custom toolkits are supported"?
>>
>> Thanks,
>> Anton.
>>
>>
>>>>
>>>> -phil.
>>>>>>
>>>>>> -phil.
>>>>>>
>>>>>> On 04/02/2015 08:15 AM, Sergey Bylokhov wrote:
>>>>>>> Hello.
>>>>>>> Please review the fix for jdk 9.
>>>>>>> There are a number of public methods in the java.awt.Toolkit class, which reference the
>>>>>>> unsupported java.awt.dnd.peer and java.awt.peer interfaces.
>>>>>>>
>>>>>>> There is a decision to remove these references as described:
>>>>>>> http://mail.openjdk.java.net/pipermail/awt-dev/2015-February/008924.html
>>>>>>> Changes description:
>>>>>>> - All such methods were moved from Toolkit.java to the ComponentFactory.java. Note that all
>>>>>>> our toolkits implement ComponentFactory interface.
>>>>>>> - HToolkit, HeadlessToolkit, SunToolkit were cleared because they have the same
>>>>>>> implementation of these methods as in ComponentFactory.
>>>>>>> - The questionable moment is that I throw an AWTError in a some places if a default toolkit
>>>>>>> not implements ComponentFactory interface.
>>>>>>>
>>>>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8074757
>>>>>>> Webrev can be found at: http://cr.openjdk.java.net/~serb/8074757/webrev.04
>>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Best regards, Sergey.
>>>>
>>>
>>>
>>> --
>>> Best regards, Sergey.
>>
>
>
> --
> Best regards, Sergey.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/awt-dev/attachments/20150413/71cb17c7/attachment.html>
More information about the awt-dev
mailing list