src/java.desktop/unix/classes/sun/awt/X11/XEmbeddingContainer.java

Print this page

        

@@ -1,7 +1,7 @@
 /*
- * Copyright (c) 2003, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2003, 2015, 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.  Oracle designates this

@@ -26,11 +26,10 @@
 package sun.awt.X11;
 
 import java.awt.*;
 import java.util.HashMap;
 import java.awt.event.KeyEvent;
-import java.lang.reflect.*;
 import sun.awt.AWTAccessor;
 
 public class XEmbeddingContainer extends XEmbedHelper implements XEventDispatcher {
     HashMap<Long, java.awt.peer.ComponentPeer> children = new HashMap<>();
 

@@ -44,17 +43,18 @@
     }
     void deinstall() {
         XToolkit.removeEventDispatcher(embedder.getWindow(), this);
     }
 
-    @SuppressWarnings("deprecation")
     void add(long child) {
         if (checkXEmbed(child)) {
             Component proxy = createChildProxy(child);
             ((Container)embedder.getTarget()).add("Center", proxy);
-            if (proxy.getPeer() != null) {
-                children.put(Long.valueOf(child), proxy.getPeer());
+            XEmbeddedFramePeer peer = AWTAccessor.getComponentAccessor()
+                                                 .getPeer(proxy);
+            if (peer != null) {
+                children.put(Long.valueOf(child), peer);
             }
         }
     }
 
     Component createChildProxy(long child) {