aboutsummaryrefslogtreecommitdiffstats
path: root/src/xwidget.c
diff options
context:
space:
mode:
authorYuuki Harano2020-10-17 03:47:03 +0900
committerJeff Walsh2020-11-24 12:24:40 +1100
commitc1fbfb3fe04e3185fa64df2ed69cd97b0a6bbb40 (patch)
tree9e07679f7629d92f31c002c63078e1d39110515f /src/xwidget.c
parentd437aabe4da94dd1a19c318a6c1f88c2df94ed1a (diff)
downloademacs-c1fbfb3fe04e3185fa64df2ed69cd97b0a6bbb40.tar.gz
emacs-c1fbfb3fe04e3185fa64df2ed69cd97b0a6bbb40.zip
Don't use gtk_window_resize to resize offscreen window
* src/xwidget.c (Fmake_xwidget): Use gtk_container_check_resize instead. (Fxwidget_resize): Use gtk_container_check_resize instead. ; Gtk+3 document says: ; > Applications should not use any API specific to GtkWindow ; > to operate on this object. It should be treated as a GtkBin ; > that has no parent widget.
Diffstat (limited to 'src/xwidget.c')
-rw-r--r--src/xwidget.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/xwidget.c b/src/xwidget.c
index c9fc706663b..893292cf5ae 100644
--- a/src/xwidget.c
+++ b/src/xwidget.c
@@ -122,8 +122,12 @@ Returns the newly constructed xwidget, or nil if construction fails. */)
122# endif 122# endif
123 123
124 xw->widgetwindow_osr = gtk_offscreen_window_new (); 124 xw->widgetwindow_osr = gtk_offscreen_window_new ();
125#ifndef HAVE_PGTK
125 gtk_window_resize (GTK_WINDOW (xw->widgetwindow_osr), xw->width, 126 gtk_window_resize (GTK_WINDOW (xw->widgetwindow_osr), xw->width,
126 xw->height); 127 xw->height);
128#else
129 gtk_container_check_resize (GTK_CONTAINER (xw->widgetwindow_osr));
130#endif
127 131
128 if (EQ (xw->type, Qwebkit)) 132 if (EQ (xw->type, Qwebkit))
129 { 133 {
@@ -966,8 +970,12 @@ DEFUN ("xwidget-resize", Fxwidget_resize, Sxwidget_resize, 3, 3, 0,
966#ifdef USE_GTK 970#ifdef USE_GTK
967 if (xw->widget_osr) 971 if (xw->widget_osr)
968 { 972 {
973#ifndef HAVE_PGTK
969 gtk_window_resize (GTK_WINDOW (xw->widgetwindow_osr), xw->width, 974 gtk_window_resize (GTK_WINDOW (xw->widgetwindow_osr), xw->width,
970 xw->height); 975 xw->height);
976#else
977 gtk_container_check_resize (GTK_CONTAINER (xw->widgetwindow_osr));
978#endif
971 gtk_container_resize_children (GTK_CONTAINER (xw->widgetwindow_osr)); 979 gtk_container_resize_children (GTK_CONTAINER (xw->widgetwindow_osr));
972 gtk_widget_set_size_request (GTK_WIDGET (xw->widget_osr), xw->width, 980 gtk_widget_set_size_request (GTK_WIDGET (xw->widget_osr), xw->width,
973 xw->height); 981 xw->height);