# HG changeset patch # User Gerd Moellmann # Date 970149651 0 # Node ID a6e9ef37895d2c6de00a8751dfed72da81527547 # Parent 44a6d62deb2b014ae93d4b77f7059035977e12ac (x_make_frame_visible): Try harder to make the frame visible. diff -r 44a6d62deb2b -r a6e9ef37895d src/xterm.c --- a/src/xterm.c Thu Sep 28 09:41:28 2000 +0000 +++ b/src/xterm.c Thu Sep 28 14:00:51 2000 +0000 @@ -11848,6 +11848,9 @@ { Lisp_Object type; int original_top, original_left; + int retry_count = 2; + + retry: BLOCK_INPUT; @@ -11972,6 +11975,20 @@ /* See if a MapNotify event has been processed. */ FRAME_SAMPLE_VISIBILITY (f); } + + /* 2000-09-28: In + + (let ((f (selected-frame))) + (iconify-frame f) + (raise-frame f)) + + the frame is not raised with various window managers on + FreeBSD, Linux and Solaris. It turns out that, for some + unknown reason, the call to XtMapWidget is completely ignored. + Mapping the widget a second time works. */ + + if (!FRAME_VISIBLE_P (f) && --retry_count > 0) + goto retry; } }