Package: emacs24
Version: 24.5+1-6+b2
Severity: important
Emacs24 from testing is not displaying icons in the toolbar.
Steps to reproduce:
1) Install Debian testing with XFCE
2) Install emacs24
3) Run emacs24
ArchLinux seems to have suffered from the same problem:
https://bugs.archlinux.org/task/48862
According to the discussion in that bugreport, the following upstream commit
fixes the issue:
https://github.com/emacs-
mirror/emacs/commit/3f4c6d52d34538bc2d4a53246af4c61ef176
Attached is a back-ported patch for emacs24_24.5+1-6+b2 which fixes the issue
for me.
-- System Information:
Debian Release: stretch/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: amd64 (x86_64)
Kernel: Linux 4.6.0-1-amd64 (SMP w/1 CPU core)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages emacs24 depends on:
ii emacs24-bin-common 24.5+1-6+b2
ii gconf-service 3.2.6-3
ii libacl12.2.52-3
ii libasound2 1.1.1-1
ii libatk1.0-02.20.0-1
ii libc6 2.22-11
ii libcairo-gobject2 1.14.6-1+b1
ii libcairo2 1.14.6-1+b1
ii libdbus-1-31.10.8-1
ii libfontconfig1 2.11.0-6.4
ii libfreetype6 2.6.3-3+b1
ii libgconf-2-4 3.2.6-3
ii libgdk-pixbuf2.0-0 2.34.0-1
ii libgif75.1.4-0.3
ii libglib2.0-0 2.48.1-1
ii libgnutls303.4.13-1
ii libgomp1 6.1.1-4
ii libgpm21.20.4-6.2
ii libgtk-3-0 3.20.6-1
ii libice62:1.0.9-1+b1
ii libjpeg62-turbo1:1.5.0-1
ii libm17n-0 1.7.0-3+b1
ii libmagickcore-6.q16-2 8:6.8.9.9-7.1
ii libmagickwand-6.q16-2 8:6.8.9.9-7.1
ii libotf00.9.13-3
ii libpango-1.0-0 1.40.1-1
ii libpangocairo-1.0-01.40.1-1
ii libpng16-161.6.23-1
ii librsvg2-2 2.40.16-1
ii libselinux12.5-3
ii libsm6 2:1.2.2-1+b1
ii libtiff5 4.0.6-1
ii libtinfo5 6.0+20160319-1
ii libx11-6 2:1.6.3-1
ii libxft22.3.2-1
ii libxinerama1 2:1.1.3-1+b1
ii libxml22.9.3+dfsg1-1.2
ii libxpm41:3.5.11-1+b1
ii libxrandr2 2:1.5.0-1
ii libxrender11:0.9.9-2
ii zlib1g 1:1.2.8.dfsg-2+b1
emacs24 recommends no packages.
Versions of packages emacs24 suggests:
pn emacs24-common-non-dfsg
diff --git a/debian/patches/0020-Handle-deprecated-Gtk-stuff-for-version-3.10.patch b/debian/patches/0020-Handle-deprecated-Gtk-stuff-for-version-3.10.patch
new file mode 100644
index 000..c788c43
--- /dev/null
+++ b/debian/patches/0020-Handle-deprecated-Gtk-stuff-for-version-3.10.patch
@@ -0,0 +1,855 @@
+From d873bce57ba4f7471a92e2577a5a133ce6171122 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jan=20Dj=C3=A4rv?=
+Date: Sat, 18 Oct 2014 18:19:53 +0200
+Subject: [PATCH] Handle deprecated Gtk+ stuff for version <= 3.10
+
+* lisp/term/x-win.el (x-gtk-stock-map): Add icon names suggested as
+replacements to stock names before stock names in a list.
+Cdr may be a list, each name is tried in turn until one is found.
+
+* src/gtkutil.c (XG_TEXT_CANCEL, XG_TEXT_OPEN, XG_TEXT_OK): New defines
+to handle Gtk versions.
+(xg_get_file_with_chooser): Use them.
+(xg_have_tear_offs, tearoff_remove, tearoff_activate): Remove
+(create_menus): Remove teroff argument and code.
+Remove call to gtk_menu_set_title.
+(xg_update_menubar, xg_update_submenu): Remove tearoff code. Adjust
+args to create_menus.
+(xg_tool_bar_menu_proxy, xg_tool_bar_detach_callback)
+(xg_tool_bar_attach_callback, TOOLBAR_TOP_WIDGET): Remove.
+(xg_pack_tool_bar): Replace TOOLBAR_TOP_WIDGET, remove detach code.
+(xg_make_tool_item): Remove detach code.
+(xg_update_tool_bar_sizes): Replace TOOLBAR_TOP_WIDGET.
+(find_icon_from_name): New function.
+(update_frame_tool_bar): Remove GtkStockItem code, move to
+find_icon_from_name. Let stock be a list of icon names to try.
+Only use gtk_image_new_from_stock on Gtk+ < 3.10.
+Replace TOOLBAR_TOP_WIDGET.
+(free_frame_tool_bar, xg_change_toolbar_position ): Replace
+TOOLBAR_TOP_WIDGET.
+(xg_initialize): Remove tearoff code.
+
+* src/gtkutil.h (xg_have_tear_offs): Remove declaration.
+
+* src/xmenu.c (set_frame_menubar): Remove GTK block that calls
+xg_have_tear_offs.
+
+* src/xterm.h (handlebox_widget): Remove.
+---
+ lisp/term/x-win.el | 63
+ src/gtkutil.c | 421 +++--
+ src/gtkutil.h | 2 -
+ src/xmenu.c| 6 -
+ src/xterm.h| 4 -
+ 5 files changed, 118 insertions(+), 378 deletions(-)
+
+diff --git a/lisp/term/x-win.el b/lisp/term/x-win.el
+index ca0ae3b..7a41d32 100644
+--- a/lisp/term/x-win.el
b/lisp/term/x-win.el
+@@ -1475,47 +1475,47 @@ This returns an error if any Emacs frames are