Return-Path: Delivered-To: apmail-harmony-commits-archive@www.apache.org Received: (qmail 96521 invoked from network); 23 Nov 2006 06:56:08 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 23 Nov 2006 06:56:08 -0000 Received: (qmail 49131 invoked by uid 500); 23 Nov 2006 06:56:18 -0000 Delivered-To: apmail-harmony-commits-archive@harmony.apache.org Received: (qmail 49110 invoked by uid 500); 23 Nov 2006 06:56:18 -0000 Mailing-List: contact commits-help@harmony.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@harmony.apache.org Delivered-To: mailing list commits@harmony.apache.org Received: (qmail 49101 invoked by uid 99); 23 Nov 2006 06:56:18 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 22 Nov 2006 22:56:18 -0800 X-ASF-Spam-Status: No, hits=-9.4 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 22 Nov 2006 22:56:07 -0800 Received: by eris.apache.org (Postfix, from userid 65534) id 1985B1A9846; Wed, 22 Nov 2006 22:55:33 -0800 (PST) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r478491 - in /harmony/enhanced/classlib/trunk/modules/swing/src: main/java/common/javax/swing/ main/java/common/javax/swing/plaf/basic/ test/api/java/common/javax/swing/ Date: Thu, 23 Nov 2006 06:55:32 -0000 To: commits@harmony.apache.org From: mloenko@apache.org X-Mailer: svnmailer-1.1.0 Message-Id: <20061123065533.1985B1A9846@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: mloenko Date: Wed Nov 22 22:55:32 2006 New Revision: 478491 URL: http://svn.apache.org/viewvc?view=rev&rev=478491 Log: applied patch for HARMONY-1801 [classlib][swing] JComponent.setBounds() should not cause revalidation Modified: harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/JComponent.java harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/JInternalFrame.java harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/plaf/basic/BasicTabbedPaneUI.java harmony/enhanced/classlib/trunk/modules/swing/src/test/api/java/common/javax/swing/JComponentRTest.java harmony/enhanced/classlib/trunk/modules/swing/src/test/api/java/common/javax/swing/JInternalFrameTest.java Modified: harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/JComponent.java URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/JComponent.java?view=diff&rev=478491&r1=478490&r2=478491 ============================================================================== --- harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/JComponent.java (original) +++ harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/JComponent.java Wed Nov 22 22:55:32 2006 @@ -1237,15 +1237,6 @@ return false; } - public void setBounds(final int x, final int y, final int w, final int h) { - int oldH = getHeight(); - int oldW = getWidth(); - super.setBounds(x, y, w, h); - if (oldH != h || oldW != w) { - revalidate(); - } - } - public boolean isOptimizedDrawingEnabled() { return true; } Modified: harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/JInternalFrame.java URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/JInternalFrame.java?view=diff&rev=478491&r1=478490&r2=478491 ============================================================================== --- harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/JInternalFrame.java (original) +++ harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/JInternalFrame.java Wed Nov 22 22:55:32 2006 @@ -1501,6 +1501,7 @@ Dimension oldSize = getSize(); super.setBounds(x, y, w, h); if (oldSize.width != w || oldSize.height != h) { + validate(); return; } Modified: harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/plaf/basic/BasicTabbedPaneUI.java URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/plaf/basic/BasicTabbedPaneUI.java?view=diff&rev=478491&r1=478490&r2=478491 ============================================================================== --- harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/plaf/basic/BasicTabbedPaneUI.java (original) +++ harmony/enhanced/classlib/trunk/modules/swing/src/main/java/common/javax/swing/plaf/basic/BasicTabbedPaneUI.java Wed Nov 22 22:55:32 2006 @@ -638,6 +638,7 @@ tabPane.doLayout(); scrollToShowTab(tabPane.getSelectedIndex()); + tabPane.revalidate(); tabPane.repaint(); } } Modified: harmony/enhanced/classlib/trunk/modules/swing/src/test/api/java/common/javax/swing/JComponentRTest.java URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/swing/src/test/api/java/common/javax/swing/JComponentRTest.java?view=diff&rev=478491&r1=478490&r2=478491 ============================================================================== --- harmony/enhanced/classlib/trunk/modules/swing/src/test/api/java/common/javax/swing/JComponentRTest.java (original) +++ harmony/enhanced/classlib/trunk/modules/swing/src/test/api/java/common/javax/swing/JComponentRTest.java Wed Nov 22 22:55:32 2006 @@ -22,7 +22,7 @@ import java.awt.event.ActionListener; -public class JComponentRTest extends BasicSwingTestCase { +public class JComponentRTest extends SwingTestCase { public void testComponentInstantiation() throws Exception { Object result = (ActionListener)new JComboBox(); result = JPanel.class; @@ -36,5 +36,20 @@ public void testResetKeyboardActions() throws Exception { JComponent c = new JComponent() {}; c.resetKeyboardActions(); + } + + public void testSetBounds() throws Throwable { + final Marker marker = new Marker(); + final JComponent button = new JButton("JButton") { + @Override + public void revalidate() { + marker.setOccurred(); + super.revalidate(); + } + }; + marker.reset(); + + button.setSize(50, 500); + assertFalse(marker.isOccurred()); } } Modified: harmony/enhanced/classlib/trunk/modules/swing/src/test/api/java/common/javax/swing/JInternalFrameTest.java URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/swing/src/test/api/java/common/javax/swing/JInternalFrameTest.java?view=diff&rev=478491&r1=478490&r2=478491 ============================================================================== --- harmony/enhanced/classlib/trunk/modules/swing/src/test/api/java/common/javax/swing/JInternalFrameTest.java (original) +++ harmony/enhanced/classlib/trunk/modules/swing/src/test/api/java/common/javax/swing/JInternalFrameTest.java Wed Nov 22 22:55:32 2006 @@ -47,6 +47,7 @@ import javax.swing.plaf.ComponentUI; import javax.swing.plaf.basic.BasicInternalFrameUI; +@SuppressWarnings("serial") public class JInternalFrameTest extends SwingTestCase { /* * This class is used to test that some methods were called. @@ -56,11 +57,13 @@ public static boolean setRootPaneCalled = false; public static boolean disposeCalled = false; + @Override public JRootPane createRootPane() { createRootPaneCalled = true; return super.createRootPane(); } + @Override public void setRootPane(final JRootPane root) { setRootPaneCalled = true; super.setRootPane(root); @@ -72,6 +75,7 @@ disposeCalled = false; } + @Override public void dispose() { disposeCalled = true; super.dispose(); @@ -177,6 +181,7 @@ /* * @see TestCase#setUp() */ + @Override protected void setUp() throws Exception { super.setUp(); frame = new JInternalFrame(); @@ -186,6 +191,7 @@ /* * @see TestCase#tearDown() */ + @Override protected void tearDown() throws Exception { if (rootFrame != null) { rootFrame.dispose(); @@ -1690,5 +1696,30 @@ assertFalse("INTERNAL_FRAME_CLOSED was not fired", l.closedFired()); } + } + + public void testSetBounds() throws Exception { + // Regression for HARMONY-1801 + final Marker validateMarker = new Marker(); + final Marker revalidateMarker = new Marker(); + final JComponent frame = new JInternalFrame() { + @Override + public void validate() { + validateMarker.setOccurred(); + super.validate(); + } + + @Override + public void revalidate() { + revalidateMarker.setOccurred(); + super.revalidate(); + } + }; + validateMarker.reset(); + revalidateMarker.reset(); + + frame.setBounds(0, 0, 50, 500); + assertFalse(revalidateMarker.isOccurred()); + assertTrue(validateMarker.isOccurred()); } }