< prev index next >

src/java.desktop/share/classes/javax/swing/RepaintManager.java

Print this page

        

@@ -334,10 +334,14 @@
         processingRunnable = new ProcessingRunnable();
     }
 
     private void displayChanged() {
         clearImages();
+
+        // Reset buffer maximum size to get valid size from updated graphics
+        // environment in getDoubleBufferMaximumSize()
+        setDoubleBufferMaximumSize(null);
     }
 
     /**
      * Mark the component as in need of layout and queue a runnable
      * for the event dispatching thread that will validate the components

@@ -1205,10 +1209,13 @@
                                                     virtualBounds.height);
             } catch (HeadlessException e) {
                 doubleBufferMaxSize = new Dimension(Integer.MAX_VALUE, Integer.MAX_VALUE);
             }
         }
+        if (doubleBufferMaxSize != null) {
+            System.err.println("Buffer size " +  doubleBufferMaxSize.width + ", " + doubleBufferMaxSize.height);
+        }
         return doubleBufferMaxSize;
     }
 
     /**
      * Enables or disables double buffering in this RepaintManager.
< prev index next >