proper layered_pane for JDialog, e.g. relevant for floating dockables in jEdit, for completion popup in text field;
authorwenzelm
Sun, 10 Aug 2014 13:59:08 +0200
changeset 5909591e188508bc9
parent 59094 51a2f9140175
child 59096 47c092fd4b45
proper layered_pane for JDialog, e.g. relevant for floating dockables in jEdit, for completion popup in text field;
src/Pure/GUI/gui.scala
     1.1 --- a/src/Pure/GUI/gui.scala	Sun Aug 10 13:06:26 2014 +0200
     1.2 +++ b/src/Pure/GUI/gui.scala	Sun Aug 10 13:59:08 2014 +0200
     1.3 @@ -12,7 +12,7 @@
     1.4  import java.awt.{Image, Component, Container, Toolkit, Window, Font, KeyboardFocusManager}
     1.5  import java.awt.font.{TextAttribute, TransformAttribute, FontRenderContext, LineMetrics}
     1.6  import java.awt.geom.AffineTransform
     1.7 -import javax.swing.{ImageIcon, JOptionPane, UIManager, JLayeredPane, JFrame, JWindow,
     1.8 +import javax.swing.{ImageIcon, JOptionPane, UIManager, JLayeredPane, JFrame, JWindow, JDialog,
     1.9    JButton, JTextField}
    1.10  
    1.11  import scala.collection.convert.WrapAsJava
    1.12 @@ -208,8 +208,9 @@
    1.13  
    1.14    def layered_pane(component: Component): Option[JLayeredPane] =
    1.15      parent_window(component) match {
    1.16 -      case Some(window: JWindow) => Some(window.getLayeredPane)
    1.17 -      case Some(frame: JFrame) => Some(frame.getLayeredPane)
    1.18 +      case Some(w: JWindow) => Some(w.getLayeredPane)
    1.19 +      case Some(w: JFrame) => Some(w.getLayeredPane)
    1.20 +      case Some(w: JDialog) => Some(w.getLayeredPane)
    1.21        case _ => None
    1.22      }
    1.23