GNU bug report logs - #15281
24.3.50; Some tool-bar buttons disappear in GTK3 Emacs

Previous Next

Package: emacs;

Reported by: Katsumi Yamaoka <yamaoka <at> jpl.org>

Date: Fri, 6 Sep 2013 00:04:02 UTC

Severity: normal

Found in version 24.3.50

Done: Katsumi Yamaoka <yamaoka <at> jpl.org>

Bug is archived. No further changes may be made.

Full log


Message #11 received at 15281 <at> debbugs.gnu.org (full text, mbox):

From: Jan Djärv <jan.h.d <at> swipnet.se>
To: Katsumi Yamaoka <yamaoka <at> jpl.org>
Cc: 15281 <at> debbugs.gnu.org
Subject: Re: bug#15281: 24.3.50; Some tool-bar buttons disappear in GTK3 Emacs
Date: Fri, 6 Sep 2013 07:03:03 +0200
Hello.

Gtk+ does its own enable/disable/selected modifications of images, and Emacs can't/shouldn't  override that.  So for Gtk+ item 1 to 3 are ignored.  Documentation should be updated though.

	Jan D.

6 sep 2013 kl. 02:02 skrev Katsumi Yamaoka <yamaoka <at> jpl.org>:

> Hi,
> 
> The Info manual describes as follows:
> 
> ,---- (info "(Elisp)Tool Bar")
> |`:image IMAGE'
> |     IMAGES is either a single image specification or a vector of four
> |     image specifications.  If you use a vector of four, one of them is
> |     used, depending on circumstances:
> |
> |    item 0
> |          Used when the item is enabled and selected.
> |
> |    item 1
> |          Used when the item is enabled and deselected.
> |
> |    item 2
> |          Used when the item is disabled and selected.
> |
> |    item 3
> |          Used when the item is disabled and deselected.
> |
> |   If IMAGE is a single image specification, Emacs draws the tool bar
> |button in disabled state by applying an edge-detection algorithm to the
> |image.
> `----
> 
> However, a tool-bar button that has such images is not shown in
> GTK3 Emacs.  Moreover, LUCID Emacs (i.e. --with-x-toolkit=lucid)
> shows such a button, however only the `item 1' image is used no
> matter what circumstance is.
> 
> This works:
> 
> (let* ((enable t)
>       (icon (find-image '((:type xpm :file "cancel.xpm"))))
>       (keymap
> 	`(keymap
> 	  (tool-bar
> 	   keymap
> 	   (ignore menu-item "IGNORE" ignore
> 		   :enable ,enable :image ,icon)))))
>  (pop-to-buffer (get-buffer-create "*testing*"))
>  (use-local-map keymap))
> 
> This doesn't work as expected:
> 
> (let* ((enable t)
>       (icon (vector
> 	      (find-image '((:type xpm :file "right-arrow.xpm")))
> 	      (find-image '((:type xpm :file "left-arrow.xpm")))
> 	      (find-image '((:type xpm :file "cancel.xpm")))
> 	      (find-image '((:type xpm :file "close.xpm")))))
>       (keymap
> 	`(keymap
> 	  (tool-bar
> 	   keymap
> 	   (ignore menu-item "IGNORE" ignore
> 		   :enable ,enable :image ,icon)))))
>  (pop-to-buffer (get-buffer-create "*testing*"))
>  (use-local-map keymap))
> 
> Thanks.
> 
> In GNU Emacs 24.3.50.1 (i686-pc-cygwin, GTK+ Version 3.8.2)
> of 2013-09-06 on localhost
> Bzr revision: 114147 dmantipov <at> yandex.ru-20130905162520-14j783enzhc0fz0i
> Windowing system distributor `The Cygwin/X Project', version 11.0.11402000
> Configured using:
> `configure --verbose --with-x-toolkit=gtk3 --without-imagemagick
> --without-dbus --without-gconf --without-gsettings'
> 
> In GNU Emacs 24.3.50.1 (i686-pc-cygwin, X toolkit, Xaw3d scroll bars)
> of 2013-09-06 on localhost
> Bzr revision: 114147 dmantipov <at> yandex.ru-20130905162520-14j783enzhc0fz0i
> Windowing system distributor `The Cygwin/X Project', version 11.0.11402000
> Configured using:
> `configure --verbose --with-x-toolkit=lucid --without-imagemagick
> --without-dbus --without-gconf --without-gsettings'
> 
> 





This bug report was last modified 11 years and 260 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.