RFR: 8362873: Regression in BorderPane after JDK-8350149
    John Hendrikx 
    jhendrikx at openjdk.org
       
    Tue Jul 22 00:15:30 UTC 2025
    
    
  
On Tue, 22 Jul 2025 00:05:35 GMT, John Hendrikx <jhendrikx at openjdk.org> wrote:
> This PR fixes a regression introduced in #1723
> 
> It reverts the changes made in the BorderPaneTest with new comments explaining why the values are what they are.  It only fixes the regression that was introduced, but it can be said that the calculation is probably also incorrect when a vertical biased control is encountered (the `getAreaWidth` and `getAreaHeight` in `BorderPane` were, and are still not using the same way to calculate their respective sizes).  See the ticket for more details and screenshots.
> 
> Let me know if I should only address the regression introduced, or also include the fix for the bias calculation for vertical bias controls.
modules/javafx.graphics/src/main/java/javafx/scene/layout/BorderPane.java line 630:
> 628:             Insets margin = getNodeMargin(child);
> 629:             return minimum ? computeChildMinAreaHeight(child, -1, margin, width, true):
> 630:                                    computeChildPrefAreaHeight(child, -1, margin, width, true);
Note: before the last boolean parameter was introduced in the `computeChildXXXAreaHeight` functions in `Region`, the default behavior was to have fill width set to `true`.  The reason I picked `false` is because the calculation above in `getAreaWidth` was using `false`, but it looks now that this was never correct.
-------------
PR Review Comment: https://git.openjdk.org/jfx/pull/1850#discussion_r2220620965
    
    
More information about the openjfx-dev
mailing list