On Wed, 17 Aug 2022 22:37:46 GMT, Damon Nguyen <dngu...@openjdk.org> wrote:

>> When a JComboBox is editable, the button segment of the combo box is 
>> misaligned vertically and has a different height. This change fixes these 
>> issues and adds a manual test that checks the appearance of an editable and 
>> non-editable JComboBox.
>> 
>> One of the discussions revolving this issue is the native macOS appearance 
>> of editable JComboBoxes. After looking through native macOS apps, the only 
>> one found is in System Preferences > Date & Time. The problem here is that 
>> the native equivalent found here uses a blue button with a single down arrow 
>> as the button's symbol. The current swing implementation uses a white button 
>> with an up & down arrow symbol for the button. A JRS widget button that has 
>> this blue button with a single downward arrow exists but does not support 
>> text fields.
>> 
>> As such, I believe the best fix for this issue is to mainly fix the 
>> alignment and sizing issue. I looked through Apple's documentation for these 
>> UI elements but editable JComboBoxes aren't specifically listed anywhere. 
>> Similarly, there's barely any editable JComboBoxes used in native mac apps 
>> (only the date & time). So, I don't think it's a major issue if JComboBox 
>> does not exactly match the example found in Date & Time.
>
> Damon Nguyen has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Updated copyright date. Added MacOS text to test.

src/java.desktop/macosx/classes/com/apple/laf/AquaComboBoxUI.java line 471:

> 469: 
> 470:             if (comboBox.getComponentOrientation().isLeftToRight()) {
> 471:                 return new Rectangle(insets.left, insets.top + midHeight,

OK. Since Apple has confirmed combobox height shouldn't change with font size, 
we can have fixed height.

Only thing I guess, till we sort out JDK-8023912: [macosx] JComboBox RTL 
orientation problem
lets use LTR as it seems it might give a false impression that we support RTL 
when we dont even know if Apple supports it or not. Do we see any difference 
with LTR and RTL?

-------------

PR: https://git.openjdk.org/jdk/pull/9473

Reply via email to