diff options
Diffstat (limited to 'java/openjdk6/files/icedtea/security/20130416/8006790.patch')
-rw-r--r-- | java/openjdk6/files/icedtea/security/20130416/8006790.patch | 166 |
1 files changed, 166 insertions, 0 deletions
diff --git a/java/openjdk6/files/icedtea/security/20130416/8006790.patch b/java/openjdk6/files/icedtea/security/20130416/8006790.patch new file mode 100644 index 000000000000..b54d5230136c --- /dev/null +++ b/java/openjdk6/files/icedtea/security/20130416/8006790.patch @@ -0,0 +1,166 @@ +# HG changeset patch +# User andrew +# Date 1365784684 -3600 +# Node ID 08f7ab5f86a27c17b648f3b47f800393d939140c +# Parent e0803f17f824df0bbedf0dd03aa06938389b1b9f +8006790: Improve checking for windows +Reviewed-by: art, mschoene + +diff --git a/src/share/classes/java/awt/Window.java b/src/share/classes/java/awt/Window.java +--- jdk/src/share/classes/java/awt/Window.java ++++ jdk/src/share/classes/java/awt/Window.java +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1995, 2007, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1995, 2013, 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 +@@ -2055,7 +2055,7 @@ + WindowPeer peer = (WindowPeer)this.peer; + synchronized(getTreeLock()) { + if (peer != null) { +- peer.setAlwaysOnTop(alwaysOnTop); ++ peer.updateAlwaysOnTopState(); + } + } + } +diff --git a/src/share/classes/java/awt/peer/WindowPeer.java b/src/share/classes/java/awt/peer/WindowPeer.java +--- jdk/src/share/classes/java/awt/peer/WindowPeer.java ++++ jdk/src/share/classes/java/awt/peer/WindowPeer.java +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1995, 2007, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1995, 2013, 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 +@@ -37,7 +37,7 @@ + public interface WindowPeer extends ContainerPeer { + void toFront(); + void toBack(); +- void setAlwaysOnTop(boolean alwaysOnTop); ++ void updateAlwaysOnTopState(); + void updateFocusableWindowState(); + boolean requestWindowFocus(); + void setModalBlocked(Dialog blocker, boolean blocked); +diff --git a/src/share/classes/sun/awt/EmbeddedFrame.java b/src/share/classes/sun/awt/EmbeddedFrame.java +--- jdk/src/share/classes/sun/awt/EmbeddedFrame.java ++++ jdk/src/share/classes/sun/awt/EmbeddedFrame.java +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1996, 2006, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1996, 2013, 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 +@@ -551,7 +551,7 @@ + public void toBack() {} + public void updateFocusableWindowState() {} + public void updateAlwaysOnTop() {} +- public void setAlwaysOnTop(boolean alwaysOnTop) {} ++ public void updateAlwaysOnTopState() {} + public Component getGlobalHeavyweightFocusOwner() { return null; } + public void setBoundsPrivate(int x, int y, int width, int height) { + setBounds(x, y, width, height, SET_BOUNDS); +diff --git a/src/solaris/classes/sun/awt/X11/XWindowPeer.java b/src/solaris/classes/sun/awt/X11/XWindowPeer.java +--- jdk/src/solaris/classes/sun/awt/X11/XWindowPeer.java ++++ jdk/src/solaris/classes/sun/awt/X11/XWindowPeer.java +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 2002, 2007, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 2002, 2013, 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 +@@ -1018,8 +1018,8 @@ + XLayerProtocol.LAYER_NORMAL); + } + +- public void setAlwaysOnTop(boolean alwaysOnTop) { +- this.alwaysOnTop = alwaysOnTop; ++ public void updateAlwaysOnTopState() { ++ this.alwaysOnTop = ((Window) this.target).isAlwaysOnTop(); + updateAlwaysOnTop(); + } + +diff --git a/src/windows/classes/sun/awt/windows/WFileDialogPeer.java b/src/windows/classes/sun/awt/windows/WFileDialogPeer.java +--- jdk/src/windows/classes/sun/awt/windows/WFileDialogPeer.java ++++ jdk/src/windows/classes/sun/awt/windows/WFileDialogPeer.java +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1996, 2007, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1996, 2013, 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 +@@ -199,7 +199,7 @@ + + // unused methods. Overridden to disable this functionality as + // it requires HWND which is not available for FileDialog +- public void setAlwaysOnTop(boolean value) {} ++ public void updateAlwaysOnTopState() {} + public void setDirectory(String dir) {} + public void setFile(String file) {} + public void setTitle(String title) {} +diff --git a/src/windows/classes/sun/awt/windows/WPrintDialogPeer.java b/src/windows/classes/sun/awt/windows/WPrintDialogPeer.java +--- jdk/src/windows/classes/sun/awt/windows/WPrintDialogPeer.java ++++ jdk/src/windows/classes/sun/awt/windows/WPrintDialogPeer.java +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1999, 2007, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1999, 2013, 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 +@@ -115,7 +115,7 @@ + // unused methods. Overridden to disable this functionality as + // it requires HWND which is not available for FileDialog + void initialize() {} +- public void setAlwaysOnTop(boolean b) {} ++ public void updateAlwaysOnTopState() {} + public void setResizable(boolean resizable) {} + public void hide() {} + public void enable() {} +diff --git a/src/windows/classes/sun/awt/windows/WWindowPeer.java b/src/windows/classes/sun/awt/windows/WWindowPeer.java +--- jdk/src/windows/classes/sun/awt/windows/WWindowPeer.java ++++ jdk/src/windows/classes/sun/awt/windows/WWindowPeer.java +@@ -1,5 +1,5 @@ + /* +- * Copyright (c) 1996, 2007, Oracle and/or its affiliates. All rights reserved. ++ * Copyright (c) 1996, 2013, 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 +@@ -112,6 +112,10 @@ + } + } + ++ public void updateAlwaysOnTopState() { ++ setAlwaysOnTop(((Window)target).isAlwaysOnTop()); ++ } ++ + public void updateFocusableWindowState() { + setFocusableWindow(((Window)target).isFocusableWindow()); + } +# HG changeset patch +# User andrew +# Date 1365787780 -3600 +# Node ID f135ac267a382a052f563d7dd8fb001cd27827be +# Parent 014d4beffa044a4ae8f7f82618bdf9bc659056a7 +Extend 8006790 to cover the Motif peer + +diff --git a/src/solaris/classes/sun/awt/motif/MWindowPeer.java b/src/solaris/classes/sun/awt/motif/MWindowPeer.java +--- jdk/src/solaris/classes/sun/awt/motif/MWindowPeer.java ++++ jdk/src/solaris/classes/sun/awt/motif/MWindowPeer.java +@@ -183,6 +183,10 @@ + updateAlwaysOnTop(alwaysOnTop); + } + ++ public void updateAlwaysOnTopState() { ++ setAlwaysOnTop(((Window)target).isAlwaysOnTop()); ++ } ++ + public void toFront() { + if (target.isVisible()) { + updateFocusableWindowState(); |