* bug#14471: 24.1.50; GTK3 shows resize handle which cannot be disabled
@ 2013-05-25 15:33 Peter Feigl
2013-05-26 8:02 ` Jan Djärv
2019-09-26 11:31 ` Stefan Kangas
0 siblings, 2 replies; 9+ messages in thread
From: Peter Feigl @ 2013-05-25 15:33 UTC (permalink / raw)
To: 14471
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
It would be great if this could be fixed in emacs bzr.
The machine I'm sending this bug report from is *not* the same machine I
tested this on.
Thanks!
Peter
In GNU Emacs 24.1.50.2 (i686-pc-linux-gnu, GTK+ Version 2.24.10)
of 2012-04-13 on nexoid
Configured using:
`configure '--prefix=/usr' '--sysconfdir=/etc' '--localstatedir=/var'
'--libexecdir=/usr/lib' '--mandir=/usr/share/man' '--without-sound'
'--with-xft' '--with-x-toolkit=gtk' 'CFLAGS=-march=i686 -mtune=generic
-O2 -pipe -fstack-protector --param=ssp-buffer-size=4
-D_FORTIFY_SOURCE=2'
'LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,--hash-style=gnu''
Important settings:
value of $LC_ALL: nil
value of $LC_COLLATE: nil
value of $LC_CTYPE: nil
value of $LC_MESSAGES: nil
value of $LC_MONETARY: nil
value of $LC_NUMERIC: nil
value of $LC_TIME: nil
value of $LANG: en_GB.UTF-8
value of $XMODIFIERS: nil
locale-coding-system: utf-8-unix
default enable-multibyte-characters: t
Major mode: rcirc
Minor modes in effect:
csv-field-index-mode: t
display-time-mode: t
shell-dirtrack-mode: t
diff-auto-refine-mode: t
rcirc-track-minor-mode: t
global-auto-revert-mode: t
show-paren-mode: t
iswitchb-mode: t
tooltip-mode: t
mouse-wheel-mode: t
use-hard-newlines: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
transient-mark-mode: t
Features:
(shadow emacsbug vcard dabbrev jka-compr tramp-cache etags org-colview
cal-iso bookmark cal-move parse-time tabify image-file org-capture
org-mks calculator newcomment cal-china lunar solar cal-dst cal-bahai
cal-islam cal-hebrew cal-julian org-indent org-w3m org-wl org-vm
org-rmail org-mhe org-mew org-irc org-jsinfo org-infojs org-html
org-info org-id org-gnus org-docview org-bibtex bibtex mailalias
smtpmail sendmail qp mail-extr multi-isearch gnutls url-queue shr-color
color shr mule-util hl-line disp-table network-stream starttls paredit
gedcom-ext gedcom wc-mode image-dired dired server package
tabulated-list quail help-mode view wgrep grep multiple-cursors
mc-separate-operations rectangular-region-mode mc-mark-more
mc-cycle-cursors mc-edit-lines multiple-cursors-core rect expand-region
cc-mode-expansions org-mode-expansions ruby-mode-expansions
nxml-mode-expansions html-mode-expansions expand-region-custom
expand-region-core rng-nxml rng-valid rng-loc rng-uri rng-parse
nxml-parse rng-match rng-dt rng-util rng-pttrn nxml-ns nxml-mode
nxml-outln nxml-rap nxml-util nxml-glyph nxml-enc xmltok skeleton
flymake zencoding-mode iy-go-to-char ob-R color-theme-solarized
color-theme slime-autoloads org-latex org-export-latex org-beamer
org-exp ob-exp org-exp-blocks find-func footnote holidays hol-loaddefs
tfs org-ical org-notmuch notmuch notmuch-message notmuch-maildir-fcc
notmuch-hello notmuch-show notmuch-print notmuch-crypto notmuch-mua
notmuch-address notmuch-wash coolj notmuch-query json goto-addr
icalendar notmuch-lib tex dbus ebib csv-mode sort compile csharp-mode
cc-langs mediawiki url-cache url-http tls url-auth url-gw amazon mm-url
xml org-bbdb bbdb-anniv diary-lib diary-loaddefs cc-mode cc-fonts
cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine ledger esh-arg
esh-util time edict edict-japanese edict-english edict-morphology
edict-edit dui-registry dui tempo url url-proxy url-privacy url-expand
url-methods url-history url-cookie url-domsuf url-util url-parse
url-vars xml-parse doxymacs w3m-load org-agenda org ob-emacs-lisp
ob-tangle ob-ref ob-lob ob-table org-footnote org-src ob-comint ob-keys
ob ob-eval org-pcomplete org-list org-faces org-compat org-entities
org-macs noutline outline cal-menu calendar cal-loaddefs org-install
scheme epa-file epa epg tramp tramp-compat auth-source eieio
tramp-loaddefs ess-toolbar ess-mouse mouseme ess-menu ess-swv ess-noweb
noweb-font-lock-mode ess-bugs-l essd-els ess-sas-d ess-sas-l ess-sas-a
executable shell pcomplete ess-arc-d ess-vst-d ess-xls-d ess-lsp-l
ess-sta-d ess-sta-l cc-vars cc-defs make-regexp ess-sp6-d ess-sp5-d
ess-sp3-d ess-r-d ess-r-args assoc ess-s-l ess-inf ess-utils ess-mode
noweb-mode ess ess-custom ess-compat ess-site bbdb-sms ido bbdb-com crm
bbdb timezone warnings slime-fancy slime-fontifying-fu slime-package-fu
slime-references slime-scratch slime-presentations slime-fuzzy
slime-fancy-inspector slime-c-p-c slime-editing-commands slime-autodoc
slime-parse slime-repl slime byte-opt bytecomp byte-compile cconv
macroexp derived hideshow pp hyperspec thingatpt browse-url ruby-mode
psvn log-edit pcvs-util add-log diff-mode easy-mmode rcirc help-at-pt
autorevert cus-start cus-load gnus-art mm-uu mml2015 epg-config
password-cache mm-view mml-smime smime cl comint regexp-opt ansi-color
ring dig mailcap gnus-sum nnoo gnus-group gnus-undo nnmail mail-source
gnus-start gnus-spec gnus-int gnus-range gnus-win gnus gnus-ems nnheader
gnus-util wid-edit edmacro kmacro gnus-alias advice help-fns
advice-preload message idna format-spec rfc822 mml easymenu mml-sec
mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045
ietf-drums mm-util mail-prsvr mailabbrev mail-utils gmm-utils mailheader
tex-site auto-loads time-date paren iswitchb tooltip ediff-hook vc-hooks
lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image fringe
lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar
mouse jit-lock font-lock syntax facemenu font-core frame cham georgian
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
japanese hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev
minibuffer loaddefs button faces cus-face files text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote make-network-process dbusbind
dynamic-setting system-font-setting font-render-setting move-toolbar gtk
x-toolkit x multi-tty emacs)
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#14471: 24.1.50; GTK3 shows resize handle which cannot be disabled
2013-05-25 15:33 bug#14471: 24.1.50; GTK3 shows resize handle which cannot be disabled Peter Feigl
@ 2013-05-26 8:02 ` Jan Djärv
2019-09-26 11:31 ` Stefan Kangas
1 sibling, 0 replies; 9+ messages in thread
From: Jan Djärv @ 2013-05-26 8:02 UTC (permalink / raw)
To: Peter Feigl; +Cc: 14471
Hello.
25 maj 2013 kl. 17:33 skrev Peter Feigl <peter.feigl@gmx.at>:
> 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
>
The reason for disabling for Gtk+ 2 is clearly explained in the comment.
> It would be great if this could be fixed in emacs bzr.
You can try to disable it with css, that seems to work for some people:
In ~/.config/gtk-3.0/gtk.css insert the following:
* {
-GtkWindow-resize-grip-default: false;
}
>
> The machine I'm sending this bug report from is *not* the same machine I
> tested this on.
>
Why?
Jan D.
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#14471: 24.1.50; GTK3 shows resize handle which cannot be disabled
2013-05-25 15:33 bug#14471: 24.1.50; GTK3 shows resize handle which cannot be disabled Peter Feigl
2013-05-26 8:02 ` Jan Djärv
@ 2019-09-26 11:31 ` Stefan Kangas
2019-09-27 8:17 ` martin rudalics
1 sibling, 1 reply; 9+ messages in thread
From: Stefan Kangas @ 2019-09-26 11:31 UTC (permalink / raw)
To: Peter Feigl; +Cc: 14471
tags 14471 + moreinfo
quit
Peter Feigl <peter.feigl@gmx.at> writes:
> 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.
Best regards,
Stefan Kangas
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#14471: 24.1.50; GTK3 shows resize handle which cannot be disabled
2019-09-26 11:31 ` Stefan Kangas
@ 2019-09-27 8:17 ` martin rudalics
2019-09-27 10:10 ` Stefan Kangas
0 siblings, 1 reply; 9+ messages in thread
From: martin rudalics @ 2019-09-27 8:17 UTC (permalink / raw)
To: Stefan Kangas, Peter Feigl; +Cc: 14471
>> 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
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#14471: 24.1.50; GTK3 shows resize handle which cannot be disabled
2019-09-27 8:17 ` martin rudalics
@ 2019-09-27 10:10 ` Stefan Kangas
2019-09-28 7:48 ` martin rudalics
0 siblings, 1 reply; 9+ messages in thread
From: Stefan Kangas @ 2019-09-27 10:10 UTC (permalink / raw)
To: martin rudalics; +Cc: Peter Feigl, 14471
martin rudalics <rudalics@gmx.at> writes:
> 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.
Does that mean that this is an issue with the window manager and not with Emacs?
Best regards,
Stefan Kangas
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#14471: 24.1.50; GTK3 shows resize handle which cannot be disabled
2019-09-27 10:10 ` Stefan Kangas
@ 2019-09-28 7:48 ` martin rudalics
2019-09-28 9:51 ` Stefan Kangas
0 siblings, 1 reply; 9+ messages in thread
From: martin rudalics @ 2019-09-28 7:48 UTC (permalink / raw)
To: Stefan Kangas; +Cc: Peter Feigl, 14471
> Does that mean that this is an issue with the window manager and not with Emacs?
I'm not sure whether we should call it an issue. There's a number of
issues involved though:
- If I'm not mistaken, GTK allows to regulate the appearance of the
grip on all windows with the help of ressource settings. So the
order seems to be (1) those settings, (2) the application's wish,
(3) the window manager's wish, (4) GTK's default value. Peter
should probably use (1) to fix this issue on his system.
- Ideally, a resize grip is shown iff (i) the associated window can be
resized and (ii) switching between states where (i) changes is
sufficiently infrequent (to avoid too much noise during redrawing).
Since (i) can be hard, showing a grip even when the window cannot be
resized does not necessarily qualify as a bug.
- Using a tiling window manager does not inherently preclude resizing
windows in two directions simultaneously. I'm not aware of one that
offers such a feature but it would be fairly easy to provide one for
Emacs' windows (I mean windows, not frames).
Finally, note that GTK has deprecated resize grips since version 3.14.
martin
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#14471: 24.1.50; GTK3 shows resize handle which cannot be disabled
2019-09-28 7:48 ` martin rudalics
@ 2019-09-28 9:51 ` Stefan Kangas
2019-09-29 7:04 ` martin rudalics
0 siblings, 1 reply; 9+ messages in thread
From: Stefan Kangas @ 2019-09-28 9:51 UTC (permalink / raw)
To: martin rudalics; +Cc: Peter Feigl, 14471
martin rudalics <rudalics@gmx.at> writes:
> > Does that mean that this is an issue with the window manager and not with Emacs?
>
> I'm not sure whether we should call it an issue. There's a number of
> issues involved though:
Thanks for the explanation. I guess that means we should close this as notabug.
> Finally, note that GTK has deprecated resize grips since version 3.14.
If I'm reading this correctly, they removed them in 3.14 (released on
2014-09-22):
https://mail.gnome.org/archives/gnome-announce-list/2014-September/msg00042.html
https://gitlab.gnome.org/GNOME/gtk/raw/master/NEWS?id=3.14.0
https://developer.gnome.org/gtk3/stable/GtkWindow.html#gtk-window-set-has-resize-grip
That would explain why I'm not seeing them on GTK 3.24.5 (the version
now shipped with Debian stable).
Best regards,
Stefan Kangas
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#14471: 24.1.50; GTK3 shows resize handle which cannot be disabled
2019-09-28 9:51 ` Stefan Kangas
@ 2019-09-29 7:04 ` martin rudalics
2019-09-29 18:13 ` Stefan Kangas
0 siblings, 1 reply; 9+ messages in thread
From: martin rudalics @ 2019-09-29 7:04 UTC (permalink / raw)
To: Stefan Kangas; +Cc: Peter Feigl, 14471
> Thanks for the explanation. I guess that means we should close this as notabug.
I think so, yes.
martin
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#14471: 24.1.50; GTK3 shows resize handle which cannot be disabled
2019-09-29 7:04 ` martin rudalics
@ 2019-09-29 18:13 ` Stefan Kangas
0 siblings, 0 replies; 9+ messages in thread
From: Stefan Kangas @ 2019-09-29 18:13 UTC (permalink / raw)
To: martin rudalics; +Cc: Peter Feigl, 14471
tags 14471 + notabug
close 14471
quit
martin rudalics <rudalics@gmx.at> write:
> > Thanks for the explanation. I guess that means we should close this as notabug.
>
> I think so, yes.
OK; done.
Best regards,
Stefan Kangas
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2019-09-29 18:13 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-05-25 15:33 bug#14471: 24.1.50; GTK3 shows resize handle which cannot be disabled Peter Feigl
2013-05-26 8:02 ` Jan Djärv
2019-09-26 11:31 ` Stefan Kangas
2019-09-27 8:17 ` martin rudalics
2019-09-27 10:10 ` Stefan Kangas
2019-09-28 7:48 ` martin rudalics
2019-09-28 9:51 ` Stefan Kangas
2019-09-29 7:04 ` martin rudalics
2019-09-29 18:13 ` Stefan Kangas
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.