Subject: Re: bug#14471: 24.1.50; GTK3 shows resize handle which cannot be disabled

From: martin rudalics <[email-masked]>
Date: Fri, 27 Sep 2019 10:17:21 +0200

>> Start "emacs -Q" that was compiled with --with-x-toolkit=gtk3 from bzr.
 >> You should see a resizing triangle button in the lower right-hand
 >> corner, as in http://www.nexoid.at/tmp/emacs-triangle.jpg
 >>
 >> This resizing button is useless on all tiling window managers. If you
 >> remove the check for GTK 3 from gtkutil.c (~ line 1159), things work
 >> fine again (and I believe this check is erroneous anyway, why only
 >> disable it on GTK != 3?). After recompiling, the resulting emacs -Q
 >> looks like this: http://www.nexoid.at/tmp/emacs-no-triangle.jpg
 >
 > I'm not seeing this resize grip on either of these:
 >
 > GNU Emacs 26.1 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.4) of
 > 2019-02-03, modified by Debian
 >
 > GNU Emacs 27.0.50 (build 14, x86_64-pc-linux-gnu, GTK+ Version 3.24.5)
 > of 2019-09-21
 >
 > Are you still seeing this on a recent version of Emacs, for example the
 > latest version 26.3?  If I don't hear back from you in a couple of
 > weeks, I'll assume this is no longer an issue and close the bug.

Ultimately, the decision whether to show a grip or not must be left to
the window manager.  A tiling window manager should suppress it for
all windows it shows.  The check mentioned by the OP is only needed
for handling an apparent bug in a GTK 2 library

   /* gtk_window_set_has_resize_grip is a Gtk+ 3.0 function but Ubuntu
      has backported it to Gtk+ 2.0 and they add the resize grip for
      Gtk+ 2.0 applications also.  But it has a bug that makes Emacs loop
      forever, so disable the grip.  */
#if (! defined HAVE_GTK3 \
      && defined HAVE_GTK_WINDOW_SET_HAS_RESIZE_GRIP)
   gtk_window_set_has_resize_grip (GTK_WINDOW (wtop), FALSE);
#endif

and should not be generalized because we would penalize users who do
want to see the grip on non-tiling WMs.  But if worse comes to worst
we could provide an option to always suppress the grip.

martin