ScrollPanePreferredSize.java revision 8729:0242fce0f717
1229997Sken/* 2229997Sken * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved. 3229997Sken * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4229997Sken * 5229997Sken * This code is free software; you can redistribute it and/or modify it 6229997Sken * under the terms of the GNU General Public License version 2 only, as 7229997Sken * published by the Free Software Foundation. 8229997Sken * 9229997Sken * This code is distributed in the hope that it will be useful, but WITHOUT 10229997Sken * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11229997Sken * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 12229997Sken * version 2 for more details (a copy is included in the LICENSE file that 13229997Sken * accompanied this code). 14229997Sken * 15229997Sken * You should have received a copy of the GNU General Public License version 16229997Sken * 2 along with this work; if not, write to the Free Software Foundation, 17229997Sken * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18229997Sken * 19229997Sken * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 20229997Sken * or visit www.oracle.com if you need additional information or have any 21229997Sken * questions. 22229997Sken */ 23229997Sken 24229997Skenimport java.awt.Dimension; 25229997Skenimport java.awt.Frame; 26229997Skenimport java.awt.ScrollPane; 27229997Skenimport java.awt.Toolkit; 28229997Sken 29229997Skenimport sun.awt.SunToolkit; 30229997Sken 31229997Sken/** 32229997Sken * @test 33229997Sken * @bug 7124213 34229997Sken * @author Sergey Bylokhov 35229997Sken */ 36229997Skenpublic final class ScrollPanePreferredSize { 37229997Sken 38229997Sken public static void main(final String[] args) { 39229997Sken final Dimension expected = new Dimension(300, 300); 40229997Sken final Frame frame = new Frame(); 41229997Sken final ScrollPane sp = new ScrollPane(); 42229997Sken sp.setSize(expected); 43229997Sken frame.add(sp); 44229997Sken frame.pack(); 45229997Sken frame.setLocationRelativeTo(null); 46229997Sken frame.setVisible(true); 47229997Sken sleep(); 48229997Sken final Dimension size = frame.getSize(); 49229997Sken if (size.width < expected.width || size.height < expected.height) { 50229997Sken throw new RuntimeException( 51229997Sken "Expected size: >= " + expected + ", actual size: " + size); 52229997Sken } 53229997Sken frame.dispose(); 54229997Sken } 55229997Sken 56229997Sken private static void sleep() { 57229997Sken ((SunToolkit) Toolkit.getDefaultToolkit()).realSync(); 58229997Sken try { 59229997Sken Thread.sleep(500L); 60229997Sken } catch (InterruptedException ignored) { 61229997Sken } 62229997Sken } 63229997Sken} 64229997Sken