RFR: 8283214: [macos] Screen magnifier does not show the magnified text for JcomboBox [v3]
Abhishek Kumar
abhiscxk at openjdk.org
Mon Jul 3 09:16:58 UTC 2023
On Fri, 30 Jun 2023 19:36:43 GMT, Alexey Ivanov <aivanov at openjdk.org> wrote:
>> I need to check with custom renderer.
>>
>> If I understand correctly, with current fix the `getSelectedItem` method will return the `rectangle` object and then calling `toString` method will return rectangle's dimension instead of the displayed text in JComboBox and that may result incorrectly. Right?
>
>> If I understand correctly, with current fix the `getSelectedItem` method will return the `rectangle` object and then calling `toString` method will return rectangle's dimension instead of the displayed text in JComboBox and that may result incorrectly. Right?
>
> Yes.
>
> I wonder if other components support this scenario.
> What if `JComboBox` uses a non-standard renderer which takes a property from an object? Let's assume, `JComboBox` is populated with `Rectangle` objects, a custom renderer is set which displays the value of the `bottom` field in the combo box. Your code, if I understand it correctly, will default to _full rectangle_ rather than what's really displayed.
>
You were right. At least in this case the current fix returns _full_rectangle_ dimension in a string form in stead of the text displayed in JComboBox.
I think it is required to look for alternate fix, probably to get the displayed text from JComboBox and set it as an accessibleName.
>How does JTable handle this kind of situation? Or JList?
I case of JTable and JList, the accessible context is of type JLabel which returns the accessibleName in string format.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/14497#discussion_r1250537863
More information about the client-libs-dev
mailing list