Your right the two threads your code is trying to communicate with are both the one and only EDT thread ...
Either try a modal dialog so you don't need the communication (wait/notify), in which case post this on the swing forum.
Or why not do whatever you where going to do on the button actionlistener in your popup dialog.
If you really want to solve this with threads you need to get your wait off the EDT so create a new thread which waits on the dialog on the EDT and then presumably will have to SwingUtilities.invokeLater back onto the EDT when finished ;-)
"Eagles may soar but weasels don't get sucked into jet engines" SCJP 1.6, SCWCD 1.4, SCJD 1.5,SCBCD 5