<Swing Dev> [10] RFR: 8182577: Crash when Tab key moves focus to a JCheckbox with a custom ButtonModel

Prasanta Sadhukhan prasanta.sadhukhan at oracle.com
Wed Jun 21 16:20:53 UTC 2017


Modified webrev to give default implementation of the new method

http://cr.openjdk.java.net/~psadhukhan/8182577/webrev.03/

Regards
Prasanta
On 6/21/2017 8:49 PM, Kevin Rushforth wrote:
> Two quick comments:
>
> 1) Is ButtonModel an interface that applications would ever implement? 
> If so, then it is an incompatible change, since there is no default 
> implementation of the new method.
>
> 2) You should add the '@since 10' javadoc tag to the new method.
>
> -- Kevin
>
>
> Semyon Sadetsky wrote:
>> Looks good. You will need to have CCC approval before push.
>>
>> --Semyon
>>
>>
>> On 06/21/2017 07:55 AM, Prasanta Sadhukhan wrote:
>>> ok. Modified webrev:
>>>
>>> http://cr.openjdk.java.net/~psadhukhan/8182577/webrev.02/
>>>
>>> Regards
>>> Prasanta
>>> On 6/21/2017 7:45 PM, Semyon Sadetsky wrote:
>>>> Hi Prasanta,
>>>>
>>>> Ii is not necessary to cast to DefaultButtonModel after you add 
>>>> getGroup() to ButtonModel:
>>>>
>>>> 241                 ButtonModel model = 
>>>> ((JToggleButton)aComponent).getModel();
>>>>
>>>> --Semyon
>>>>
>>>> On 06/20/2017 10:36 PM, Prasanta Sadhukhan wrote:
>>>>> Hi Semyon,
>>>>>
>>>>> Yes, it seems the problem will be there in that case. Modified to 
>>>>> have getGroup() in the interface
>>>>> http://cr.openjdk.java.net/~psadhukhan/8182577/webrev.01/
>>>>>
>>>>> Regards
>>>>> Prasanta
>>>>> On 6/20/2017 11:16 PM, Semyon Sadetsky wrote:
>>>>>> Hi Prasanta,
>>>>>>
>>>>>> With the DefaultButtonModel we can get the same exception if a 
>>>>>> custom implementation of the ButtonModel is used.
>>>>>>
>>>>>> So, it is better check whether  the model is a DefaultButtonModel 
>>>>>> and skip if grouping is not supported. Or, perhaps, it is 
>>>>>> reasonable to pull up the getGroup() into the ButtonModel 
>>>>>> interface which already has setGroup().
>>>>>>
>>>>>> --Semyon
>>>>>>
>>>>>>
>>>>>> On 06/20/2017 10:21 AM, Prasanta Sadhukhan wrote:
>>>>>>> Hi All,
>>>>>>>
>>>>>>> Please review a fix for an issue where a crash is reported when 
>>>>>>> focus is moved with custom ButtonModel.
>>>>>>> Issue was in LayoutFocusTraversalPolicy, the ButtonModel was 
>>>>>>> wrongly typecasted to JToggleButton when the button model is 
>>>>>>> DefaultButtonModel, resulting in ClassCastException.
>>>>>>>
>>>>>>> Proposed fix is to cast to super class DefaultButtonModel and 
>>>>>>> then check for JToggleButton member.
>>>>>>>
>>>>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8182577
>>>>>>> webrev: http://cr.openjdk.java.net/~psadhukhan/8182577/webrev.00/
>>>>>>>
>>>>>>> Regards
>>>>>>> Prasanta
>>>>>>
>>>>>
>>>>
>>>
>>




More information about the swing-dev mailing list