On Fri, 23 May 2025 08:05:38 GMT, Prasanta Sadhukhan <psadhuk...@openjdk.org> 
wrote:

>> The issue is when a JSplitPane is embedded inside a lazily-initialized 
>> panel, and this panel is displayed using a dialog created via 
>> JOptionPane.createDialog(), the divider location is not preserved when 
>> reopening the dialog. 
>> This is because when we added support for ComponentOrientation for 
>> JSplitPane, even though the left and right compoent is drawn the divider 
>> location is not set and was set to initial value and not to the value set by 
>> user.
>> Fixed by setting the divider location before rendering the left and right 
>> components..
>
> Prasanta Sadhukhan has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   Set orientation only if changed...add headful in test

src/java.desktop/share/classes/javax/swing/JSplitPane.java line 373:

> 371:     public void setComponentOrientation(ComponentOrientation 
> orientation) {
> 372:         if (!orientation.equals(this.getComponentOrientation())) {
> 373:             super.setComponentOrientation(orientation);

I would like to bring up for discussion whether we should move this line 
outside the if block. From what I can tell, it was always executed before the 
initial fix, so this change might affect the original behavior.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/25294#discussion_r2105687915

Reply via email to