aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Djärv2009-05-11 06:42:45 +0000
committerJan Djärv2009-05-11 06:42:45 +0000
commit47a6002f34c4ae913fc696cfeb7d09c645040492 (patch)
tree35af7a8d5b5aa7c9e8b6992831e728ef5fc070c7
parent372a93ac3988e4eb40a1d6776aaf86f9937f7da9 (diff)
downloademacs-47a6002f34c4ae913fc696cfeb7d09c645040492.tar.gz
emacs-47a6002f34c4ae913fc696cfeb7d09c645040492.zip
* gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
what we expect to get in the next ConfigureNotify event.
-rw-r--r--src/ChangeLog5
-rw-r--r--src/gtkutil.c23
2 files changed, 28 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 0d9c4dd196b..4e774d027f0 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
12009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2
3 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
4 what we expect to get in the next ConfigureNotify event.
5
12009-05-07 David Reitter <david.reitter@gmail.com> 62009-05-07 David Reitter <david.reitter@gmail.com>
2 7
3 * nsfns.m (Fx_display_planes): Compute bitplanes using 8 * nsfns.m (Fx_display_planes): Compute bitplanes using
diff --git a/src/gtkutil.c b/src/gtkutil.c
index 41f2518af83..3ea7c14629a 100644
--- a/src/gtkutil.c
+++ b/src/gtkutil.c
@@ -736,6 +736,29 @@ xg_frame_set_char_size (f, cols, rows)
736 x_wm_size_hint_off (f); 736 x_wm_size_hint_off (f);
737 gtk_window_resize (GTK_WINDOW (FRAME_GTK_OUTER_WIDGET (f)), 737 gtk_window_resize (GTK_WINDOW (FRAME_GTK_OUTER_WIDGET (f)),
738 pixelwidth, pixelheight); 738 pixelwidth, pixelheight);
739
740 /* Now, strictly speaking, we can't be sure that this is accurate,
741 but the window manager will get around to dealing with the size
742 change request eventually, and we'll hear how it went when the
743 ConfigureNotify event gets here.
744
745 We could just not bother storing any of this information here,
746 and let the ConfigureNotify event set everything up, but that
747 might be kind of confusing to the Lisp code, since size changes
748 wouldn't be reported in the frame parameters until some random
749 point in the future when the ConfigureNotify event arrives.
750
751 We pass 1 for DELAY since we can't run Lisp code inside of
752 a BLOCK_INPUT. */
753 change_frame_size (f, rows, cols, 0, 1, 0);
754 FRAME_PIXEL_WIDTH (f) = pixelwidth;
755 FRAME_PIXEL_HEIGHT (f) = pixelheight;
756
757 /* We've set {FRAME,PIXEL}_{WIDTH,HEIGHT} to the values we hope to
758 receive in the ConfigureNotify event; if we get what we asked
759 for, then the event won't cause the screen to become garbaged, so
760 we have to make sure to do it here. */
761 SET_FRAME_GARBAGED (f);
739 flush_and_sync (f); 762 flush_and_sync (f);
740 x_wm_set_size_hint (f, 0, 0); 763 x_wm_set_size_hint (f, 0, 0);
741} 764}