--- /home/cpdev/src/classpath/gnu/java/awt/EmbeddedWindow.java	2005-07-05 05:32:32.000000000 +0000
+++ gnu/java/awt/EmbeddedWindow.java	2005-06-30 05:34:03.000000000 +0000
@@ -85,8 +85,12 @@
    */
   public void addNotify()
   {
-    // Assume we're using ClasspathToolkit
-    ClasspathToolkit tk = (ClasspathToolkit) getToolkit();
+    Toolkit tk = getToolkit();
+
+    if (! (tk instanceof EmbeddedWindowSupport))
+      throw new UnsupportedOperationException
+        ("Embedded windows are not supported by the current peers: "
+	 + tk.getClass());
 
     // Circumvent the package-privateness of the AWT internal
     // java.awt.Component.peer member variable.
@@ -94,7 +98,7 @@
       {
 	Field peerField = Component.class.getDeclaredField("peer");
 	AccessController.doPrivileged(new SetAccessibleAction(peerField));
-	peerField.set(this, tk.createEmbeddedWindow (this));
+	peerField.set(this, ((EmbeddedWindowSupport) tk).createEmbeddedWindow (this));
       }
     catch (IllegalAccessException e)
       {
