changeset 40130:4be22db6fb52

8158918: setExtendedState(1) for maximized Frame results in state==7 Reviewed-by: alexsch, ssadetsky Contributed-by: rajeev.chamyal@oracle.com
author rchamyal
date Thu, 21 Jul 2016 20:30:18 +0530
parents 8c377aa2725a
children f28fd8947dce
files jdk/src/java.desktop/windows/native/libawt/windows/awt_Frame.cpp jdk/test/java/awt/Frame/8158918/SetExtendedState.java
diffstat 2 files changed, 48 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/jdk/src/java.desktop/windows/native/libawt/windows/awt_Frame.cpp	Wed Jul 20 17:08:04 2016 +0200
+++ b/jdk/src/java.desktop/windows/native/libawt/windows/awt_Frame.cpp	Thu Jul 21 20:30:18 2016 +0530
@@ -1374,7 +1374,6 @@
             } else { // zoom == iconify == FALSE
                 wp.showCmd = focusable ? SW_RESTORE : SW_SHOWNOACTIVATE;
             }
-            ::ShowWindow(hwnd, wp.showCmd);
             if (zoom && iconify) {
                 wp.flags |= WPF_RESTORETOMAXIMIZED;
             } else {
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jdk/test/java/awt/Frame/8158918/SetExtendedState.java	Thu Jul 21 20:30:18 2016 +0530
@@ -0,0 +1,48 @@
+/*
+ * Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+ * or visit www.oracle.com if you need additional information or have any
+ * questions.
+ */
+
+/*
+ * @test
+ * @bug 8158918
+ * @summary setExtendedState(1) for maximized Frame results in state==7
+ * @run main SetExtendedState
+ */
+import java.awt.Frame;
+
+public class SetExtendedState {
+
+    public static void main(String[] args) {
+        Frame frame = new Frame("frame");
+        frame.setBounds(100, 100, 200, 200);
+        frame.setVisible(true);
+        frame.setExtendedState(Frame.MAXIMIZED_BOTH);
+        frame.setExtendedState(Frame.ICONIFIED);
+        if (frame.getExtendedState() != Frame.ICONIFIED) {
+            frame.dispose();
+            throw new RuntimeException("Test Failed");
+        }
+        frame.dispose();
+    }
+}
+
+