commit:     fecebd004e1d5eda9091f8f81c5227b44147915a
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat May 17 15:50:47 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat May 17 15:50:47 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fecebd00

lxde-base/lxpanel: fix taskbar going off screen

Thanks to Sophie for digging this up.

Closes: https://bugs.gentoo.org/956049
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/lxpanel-0.10.1-icon-grid-taskbar.patch   | 40 ++++++++++++
 lxde-base/lxpanel/lxpanel-0.10.1-r2.ebuild         | 76 ++++++++++++++++++++++
 2 files changed, 116 insertions(+)

diff --git a/lxde-base/lxpanel/files/lxpanel-0.10.1-icon-grid-taskbar.patch 
b/lxde-base/lxpanel/files/lxpanel-0.10.1-icon-grid-taskbar.patch
new file mode 100644
index 000000000000..845fb892590e
--- /dev/null
+++ b/lxde-base/lxpanel/files/lxpanel-0.10.1-icon-grid-taskbar.patch
@@ -0,0 +1,40 @@
+https://bugs.gentoo.org/956049
+
+From 57b258a7d703dd94bdcf67c6e92b63b0d402ae43 Mon Sep 17 00:00:00 2001
+From: Ben Walsh <[email protected]>
+Date: Mon, 7 Feb 2022 07:02:05 +0000
+Subject: [PATCH] Correct icon-grid width under GTK3
+
+When opening multiple windows, the Taskbar plugin does not resize the
+taskbar buttons if they exceed the available space. Everything to the
+right of the taskbar slides off the screen instead.
+
+Do not set the minimum width to the same value as the natural (i.e.
+current) width if the width is constrained by the allocated space,
+but set it to the smallest possible value.
+
+This likely fixes github issue #23, reported by FredericGuilbault,
+fixes github issue #29, reported by johnfound,
+fixes github issue #63, reported by LiohMoeller,
+fixes part of https://bugs.debian.org/1052050,
+fixes https://bugs.debian.org/1052376, and
+fixes part of https://sourceforge.net/p/lxde/bugs/968.
+
+(commit message amended by committer)
+---
+ src/icon-grid.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/icon-grid.c b/src/icon-grid.c
+index 2177971e..c0020de3 100644
+--- a/src/icon-grid.c
++++ b/src/icon-grid.c
+@@ -392,7 +392,7 @@ static void panel_icon_grid_get_preferred_width(GtkWidget 
*widget,
+     }
+     panel_icon_grid_size_request(widget, &requisition);
+     if (minimal_width)
+-        *minimal_width = requisition.width;
++        *minimal_width = ig->constrain_width ? 0 : requisition.width;
+     if (natural_width)
+         *natural_width = requisition.width;
+ }

diff --git a/lxde-base/lxpanel/lxpanel-0.10.1-r2.ebuild 
b/lxde-base/lxpanel/lxpanel-0.10.1-r2.ebuild
new file mode 100644
index 000000000000..1839a56bff47
--- /dev/null
+++ b/lxde-base/lxpanel/lxpanel-0.10.1-r2.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit readme.gentoo-r1 xdg
+
+DESCRIPTION="Lightweight X11 desktop panel for LXDE"
+HOMEPAGE="https://wiki.lxde.org/en/LXPanel";
+SRC_URI="https://downloads.sourceforge.net/lxde/${P}.tar.xz";
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ppc ~riscv ~x86 ~amd64-linux ~x86-linux"
+IUSE="+alsa wifi"
+
+RDEPEND="
+       dev-libs/keybinder:3
+       lxde-base/lxmenu-data
+       >=lxde-base/menu-cache-1.1.0-r1
+       x11-libs/cairo
+       x11-libs/gdk-pixbuf
+       x11-libs/gtk+:3
+       >=x11-libs/libfm-1.3.2[gtk]
+       x11-libs/libwnck:3
+       x11-libs/libX11
+       x11-libs/libXmu
+       x11-libs/libXpm
+       alsa? ( media-libs/alsa-lib )
+       wifi? ( net-wireless/wireless-tools )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       sys-devel/gettext
+       virtual/pkgconfig
+"
+
+DOC_CONTENTS="If you have problems with broken icons shown in the main panel,
+you will have to configure panel settings via its menu.
+This will not be an issue with first time installations."
+
+PATCHES=(
+       # https://sourceforge.net/p/lxde/bugs/773/
+       "${FILESDIR}/${P}-fix-pager-panel-width.patch"
+       "${FILESDIR}/${PN}-0.10.1-netstatus-icon.patch"
+       "${FILESDIR}/${PN}-0.10.1-c99.patch"
+       "${FILESDIR}/${PN}-0.10.1-c99-2.patch"
+       "${FILESDIR}/${PN}-0.10.1-icon-grid-taskbar.patch"
+)
+
+src_configure() {
+       xdg_environment_reset
+
+       local 
plugins="netstatus,volume,cpu,deskno,batt,kbled,xkb,thermal,cpufreq,monitors"
+
+       use wifi && plugins+=",netstat"
+       use alsa && plugins+=",volumealsa"
+
+       econf \
+               $(use_enable alsa) \
+               --enable-gtk3 \
+               --with-x \
+               --with-plugins="${plugins}"
+       # the gtk+ dep already pulls in libX11, so we might as well hardcode 
with-x
+}
+
+src_install() {
+       default
+       find "${ED}" -name '*.la' -delete || die
+
+       readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+       readme.gentoo_print_elog
+}

Reply via email to