]> git.eshelyaron.com Git - emacs.git/commitdiff
Don't use gtk_window_resize to resize offscreen window
authorYuuki Harano <masm+github@masm11.me>
Fri, 16 Oct 2020 18:47:03 +0000 (03:47 +0900)
committerJeff Walsh <jeff.walsh@drtusers-MacBook-Pro.local>
Tue, 24 Nov 2020 01:24:40 +0000 (12:24 +1100)
* 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.

src/xwidget.c

index c9fc706663bca3ae2f1908ec656a812530cf2e23..893292cf5ae8e6560257a54e6924aba5dc041434 100644 (file)
@@ -122,8 +122,12 @@ Returns the newly constructed xwidget, or nil if construction fails.  */)
 # endif
 
       xw->widgetwindow_osr = gtk_offscreen_window_new ();
+#ifndef HAVE_PGTK
       gtk_window_resize (GTK_WINDOW (xw->widgetwindow_osr), xw->width,
                          xw->height);
+#else
+      gtk_container_check_resize (GTK_CONTAINER (xw->widgetwindow_osr));
+#endif
 
       if (EQ (xw->type, Qwebkit))
         {
@@ -966,8 +970,12 @@ DEFUN ("xwidget-resize", Fxwidget_resize, Sxwidget_resize, 3, 3, 0,
 #ifdef USE_GTK
   if (xw->widget_osr)
     {
+#ifndef HAVE_PGTK
       gtk_window_resize (GTK_WINDOW (xw->widgetwindow_osr), xw->width,
                          xw->height);
+#else
+      gtk_container_check_resize (GTK_CONTAINER (xw->widgetwindow_osr));
+#endif
       gtk_container_resize_children (GTK_CONTAINER (xw->widgetwindow_osr));
       gtk_widget_set_size_request (GTK_WIDGET (xw->widget_osr), xw->width,
                                    xw->height);