[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openjdk-awt-dev
Subject:    Re: <AWT Dev> [9] Review Request: 8074757 Remove java.awt.Toolkit methods which return peer types
From:       Phil Race <philip.race () oracle ! com>
Date:       2015-04-14 19:04:09
Message-ID: 552D64A9.8050007 () oracle ! com
[Download RAW message or body]

+1

-phil.

On 4/13/2015 1:44 AM, Anton V. Tarasov wrote:
> 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.
>

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic