summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGerd Moellmann <gerd@gnu.org>2001-07-25 12:45:28 +0000
committerGerd Moellmann <gerd@gnu.org>2001-07-25 12:45:28 +0000
commit563b384d146608fd48f141b66d54d890e4e017c4 (patch)
treee4d4efe8ada972ae6f0d7e0a02ade4f173aa92ec
parent64c5be50fbdfe84d9da49f9cef73cea606d99ab8 (diff)
downloademacs-563b384d146608fd48f141b66d54d890e4e017c4.tar.gz
(Fx_file_dialog): Block/unblock input while processing
events so that we get a chance of processing expose events.
-rw-r--r--src/ChangeLog3
-rw-r--r--src/xfns.c12
2 files changed, 13 insertions, 2 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 76101cce23f..87b07151e77 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,8 @@
2001-07-25 Gerd Moellmann <gerd@gnu.org>
+ * xfns.c (Fx_file_dialog): Block/unblock input while processing
+ events so that we get a chance of processing expose events.
+
* xdisp.c (resize_mini_window): Don't resize while redisplaying.
2001-07-24 Gerd Moellmann <gerd@gnu.org>
diff --git a/src/xfns.c b/src/xfns.c
index 0d71a16fa6a..1713c8ef963 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -11256,10 +11256,18 @@ selection dialog's entry field, if MUSTMATCH is non-nil.")
XmListSetPos (list, item_pos);
}
- /* Process events until the user presses Cancel or OK. */
+ /* Process events until the user presses Cancel or OK. Block
+ and unblock input here so that we get a chance of processing
+ expose events. */
+ UNBLOCK_INPUT;
result = 0;
while (result == 0)
- XtAppProcessEvent (Xt_app_con, XtIMAll);
+ {
+ BLOCK_INPUT;
+ XtAppProcessEvent (Xt_app_con, XtIMAll);
+ UNBLOCK_INPUT;
+ }
+ BLOCK_INPUT;
/* Get the result. */
if (result == XmCR_OK)