diff --git a/openbox-calc-layer.patch b/openbox-calc-layer.patch new file mode 100644 index 0000000..9f00bbb --- /dev/null +++ b/openbox-calc-layer.patch @@ -0,0 +1,36 @@ +From https://bugzilla.icculus.org/show_bug.cgi?id=6669#c2 + +diff --git a/openbox/client.c b/openbox/client.c +index 3ff278ae..ac4ff827 100644 +--- a/openbox/client.c ++++ b/openbox/client.c +@@ -2702,9 +2702,10 @@ static void client_calc_layer_internal(ObClient *self) + void client_calc_layer(ObClient *self) + { + GList *it; ++ GList *list = g_list_copy(stacking_list); + + /* skip over stuff above fullscreen layer */ +- for (it = stacking_list; it; it = g_list_next(it)) ++ for (it = list; it; it = g_list_next(it)) + if (window_layer(it->data) <= OB_STACKING_LAYER_FULLSCREEN) break; + + /* find the windows in the fullscreen layer, and mark them not-visited */ +@@ -2717,7 +2718,7 @@ void client_calc_layer(ObClient *self) + client_calc_layer_internal(self); + + /* skip over stuff above fullscreen layer */ +- for (it = stacking_list; it; it = g_list_next(it)) ++ for (it = list; it; it = g_list_next(it)) + if (window_layer(it->data) <= OB_STACKING_LAYER_FULLSCREEN) break; + + /* now recalc any windows in the fullscreen layer which have not +@@ -2728,6 +2729,8 @@ void client_calc_layer(ObClient *self) + !WINDOW_AS_CLIENT(it->data)->visited) + client_calc_layer_internal(it->data); + } ++ ++ g_list_free(it); + } + + gboolean client_should_show(ObClient *self) diff --git a/openbox-kf5menu.patch b/openbox-kf5menu.patch new file mode 100644 index 0000000..1c3c9e5 --- /dev/null +++ b/openbox-kf5menu.patch @@ -0,0 +1,12 @@ +diff -up openbox-3.6.1/data/xsession/openbox-kde-session.in.kf5menu openbox-3.6.1/data/xsession/openbox-kde-session.in +--- openbox-3.6.1/data/xsession/openbox-kde-session.in.kf5menu 2011-10-16 18:13:18.000000000 +0200 ++++ openbox-3.6.1/data/xsession/openbox-kde-session.in 2020-11-09 10:42:43.755217411 +0100 +@@ -8,7 +8,7 @@ if test -n "$1"; then + fi + + # Set the prefix for the menu layout to use +-export XDG_MENU_PREFIX="kde-4-" ++export XDG_MENU_PREFIX="kf5-" + + # Clean up after GDM + xprop -root -remove _NET_NUMBER_OF_DESKTOPS \ diff --git a/openbox.spec b/openbox.spec index 850db67..9e1d7f4 100644 --- a/openbox.spec +++ b/openbox.spec @@ -1,9 +1,9 @@ Name: openbox Version: 3.6.1 -Release: 11%{?dist} +Release: 31%{?dist} Summary: A highly configurable and standards-compliant X11 window manager -License: GPLv2+ +License: GPL-2.0-or-later URL: http://openbox.org Source0: http://openbox.org/dist/%{name}/%{name}-%{version}.tar.xz Source1: http://icculus.org/openbox/tools/setlayout.c @@ -11,6 +11,8 @@ Source2: xdg-menu Source3: menu.xml Source4: terminals.menu Patch1: openbox-python3.patch +Patch2: openbox-kf5menu.patch +Patch3: openbox-calc-layer.patch Requires: %{name}-libs%{?_isa} = %{version}-%{release} @@ -21,6 +23,7 @@ Suggests: python3-gobject # as discussed in https://bugzilla.redhat.com/860997 Requires: redhat-menus +BuildRequires: make BuildRequires: gcc BuildRequires: gettext BuildRequires: desktop-file-utils @@ -51,7 +54,6 @@ actions, multi-head/Xinerama support, and dynamically generated "pipe menus." For a full list of the FreeDesktop.org standards with which it is compliant, please see the COMPLIANCE file in the included documentation of this package. For a graphical configuration editor, you'll need to install the obconf -package. For a graphical menu editor, you'll need to install the obmenu package. @@ -78,11 +80,7 @@ The %{name}-libs package contains shared libraries used by %{name}. %package kde Summary: KDE integration for %{name} Requires: %{name} = %{version}-%{release} -%if 0%{?fedora} > 21 Requires: plasma-workspace -%else -Requires: kdebase-workspace -%endif BuildArch: noarch %description kde @@ -92,7 +90,9 @@ KDE session. %prep %setup -q -%patch1 -p1 -b .python3 +%patch -P1 -p1 -b .python3 +%patch -P2 -p1 -b .kf5menu +%patch -P3 -p1 -b .calc-layer %build @@ -101,12 +101,12 @@ KDE session. ## Fix RPATH hardcoding. sed -ie 's|^hardcode_libdir_flag_spec=.*$|hardcode_libdir_flag_spec=""|g' libtool sed -ie 's|^runpath_var=LD_RUN_PATH$|runpath_var=DIE_RPATH_DIE|g' libtool -make %{?_smp_mflags} +%make_build gcc $RPM_OPT_FLAGS $RPM_LD_FLAGS -o setlayout %{SOURCE1} -lX11 %install -make install DESTDIR=%{buildroot} +%make_install install setlayout %{buildroot}%{_bindir} install -p %{SOURCE2} %{buildroot}%{_libexecdir}/openbox-xdg-menu @@ -173,6 +173,67 @@ rm -rf %{buildroot}%{_datadir}/doc/%{name} %ldconfig_scriptlets libs %changelog +* Thu Jul 16 2026 Fedora Release Engineering - 3.6.1-31 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild + +* Fri Jan 16 2026 Fedora Release Engineering - 3.6.1-30 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Thu Jul 24 2025 Fedora Release Engineering - 3.6.1-29 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Fri Jan 17 2025 Fedora Release Engineering - 3.6.1-28 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Thu Jul 18 2024 Fedora Release Engineering - 3.6.1-27 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Thu Jan 25 2024 Fedora Release Engineering - 3.6.1-26 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sun Jan 21 2024 Fedora Release Engineering - 3.6.1-25 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Thu Jul 20 2023 Fedora Release Engineering - 3.6.1-24 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Tue Jun 13 2023 Leigh Scott - 3.6.1-23 +- Rebuild fo new imlib2 + +* Thu Apr 27 2023 Miroslav Lichvar - 3.6.1-22 +- fix crash with new glib (#2178299) + +* Thu Jan 19 2023 Fedora Release Engineering - 3.6.1-21 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Fri Jul 22 2022 Fedora Release Engineering - 3.6.1-20 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Thu Jan 20 2022 Fedora Release Engineering - 3.6.1-19 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Thu Jul 22 2021 Fedora Release Engineering - 3.6.1-18 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Tue Jan 26 2021 Fedora Release Engineering - 3.6.1-17 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Mon Nov 09 2020 Miroslav Lichvar - 3.6.1-16 +- update XDG menu prefix in KDE session script (#1851755) +- drop obsolete KDE4 requirement + +* Tue Jul 28 2020 Fedora Release Engineering - 3.6.1-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed Jan 29 2020 Fedora Release Engineering - 3.6.1-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Wed Oct 09 2019 Miroslav Lichvar - 3.6.1-13 +- remove obmenu from description + +* Thu Jul 25 2019 Fedora Release Engineering - 3.6.1-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Fri Feb 01 2019 Fedora Release Engineering - 3.6.1-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild