question: protected void updateCachedAWTSizes ( final Dimension min , final Dimension pref , final Dimension max ) { assert EventQueue . isDispatchThread ( ) ; if ( verboseSizeLayout ) { System . err . println ( "AWT thread: updated component sizes: " + min + " <= " + pref + " <= " + max ) ; } lastValidatedAWTTime = ++ currentAWTTime ; boolean mustNotify ; synchronized ( this ) { mustNotify = cachedSizesInitialized == 0 ; if ( ! mustNotify ) { mustNotify = ! ( min . equals ( cachedMinSize ) && pref . equals ( cachedPrefSize ) && max . equals ( cachedMaxSize ) ) ; } if ( cachedSizesInitialized == 0 ) { cachedSizesInitialized = 1 ; } cachedMinSize = min ; cachedPrefSize = pref ; cachedMaxSize = max ; if ( INITIAL_CLIENT_AREA_WORKAROUND && initialClientArea != null ) { initialClientArea . width = cachedPrefSize . width ; initialClientArea . height = cachedPrefSize . height ; } } if ( mustNotify ) { final int onBehalfAWTTime = lastValidatedAWTTime ; ThreadingHandler . getInstance ( ) . asyncExec ( display , null ) ; } }
target:  Given the minimum, preferred, and maximum sizes of the Swing component, this method stores them in the cache and updates this control accordingly.