From: Gerd Moellmann Date: Thu, 28 Sep 2000 14:00:51 +0000 (+0000) Subject: (x_make_frame_visible): Try harder to make the frame X-Git-Tag: emacs-pretest-21.0.90~1332 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=31be92510e362685373a4568cd4c797f655beb56;p=emacs.git (x_make_frame_visible): Try harder to make the frame visible. --- diff --git a/src/xterm.c b/src/xterm.c index b7998488d1b..ff821edab19 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -11848,6 +11848,9 @@ x_make_frame_visible (f) { Lisp_Object type; int original_top, original_left; + int retry_count = 2; + + retry: BLOCK_INPUT; @@ -11972,6 +11975,20 @@ x_make_frame_visible (f) /* 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; } }