diff --git a/.gitignore b/.gitignore index d5912b7..197070b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,7 @@ wmx-defaults-1.tar.gz wmx-7.tar.gz +/wmx-7.tar.gz +/wmx-defaults-1.tar.gz +/wmx-defaults-2.tar.gz +/wmx-8.tar.gz +/wmx-defaults-3.tar.gz diff --git a/Xclients.wmx.sh b/Xclients.wmx.sh old mode 100755 new mode 100644 diff --git a/sources b/sources index decc05b..b43253b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -a5f221d36884276cbf331414d4f2a761 wmx-defaults-1.tar.gz -e8eda438f5dda09d11ba7de1dcf9e501 wmx-7.tar.gz +52a0e31b9a77e227eb6dc732f7941f15 wmx-8.tar.gz +d5d5e760039fce77133abff54ce97cc1 wmx-defaults-3.tar.gz diff --git a/wmx-7-composite.patch b/wmx-7-composite.patch deleted file mode 100644 index fa9520f..0000000 --- a/wmx-7-composite.patch +++ /dev/null @@ -1,227 +0,0 @@ -diff -NarU5 wmx-7.orig/Config.h wm2-wmx-trunk/wmx/Config.h ---- wmx-7.orig/Config.h 2009-01-09 06:18:03.000000000 -0500 -+++ wm2-wmx-trunk/wmx/Config.h 2009-01-19 13:49:50.000000000 -0500 -@@ -146,10 +146,18 @@ - // if False, behaviour will be as in wm2 (stretching the background - // image only). - - #define CONFIG_RESIZE_UPDATE True - -+// If USE_COMPOSITE is true, wmx will enable composite redirects for -+// all windows if the Composite extension is present. This should -+// make no difference at all to the appearance or behaviour of wmx, -+// but it may make it substantially faster with modern video cards -+// that optimise rendering more than old-fashioned window operations. -+ -+#define CONFIG_USE_COMPOSITE True -+ - // If RAISELOWER_ON_CLICK is True, clicking on the title of the - // topmost window will lower instead of raising it (patch due to - // Kazushi (Jam) Marukawa) - - #define CONFIG_RAISELOWER_ON_CLICK False -@@ -253,14 +261,12 @@ - // at all, define it to CONFIG_NO_BUTTON. - #define CONFIG_NO_BUTTON 999 - #define CONFIG_CLIENTMENU_BUTTON Button1 - #define CONFIG_COMMANDMENU_BUTTON Button2 - #define CONFIG_CIRCULATE_BUTTON Button3 // switch window, when over frame --#define CONFIG_PREVCHANNEL_BUTTON CONFIG_NO_BUTTON // flip channel, when over frame --#define CONFIG_NEXTCHANNEL_BUTTON CONFIG_NO_BUTTON --//#define CONFIG_PREVCHANNEL_BUTTON CONFIG_NO_BUTTON --//#define CONFIG_NEXTCHANNEL_BUTTON CONFIG_NO_BUTTON -+#define CONFIG_PREVCHANNEL_BUTTON Button5 // flip channel, when over frame -+#define CONFIG_NEXTCHANNEL_BUTTON Button4 // flip channel, when over frame - - - // ============================== - // Section III. Colours and fonts - // ============================== -diff -NarU5 wmx-7.orig/configure wm2-wmx-trunk/wmx/configure ---- wmx-7.orig/configure 2009-01-09 06:18:03.000000000 -0500 -+++ wm2-wmx-trunk/wmx/configure 2009-01-19 11:57:15.000000000 -0500 -@@ -3018,10 +3018,87 @@ - - fi - - - -+{ echo "$as_me:$LINENO: checking for XCompositeQueryExtension in -lXcomposite" >&5 -+echo $ECHO_N "checking for XCompositeQueryExtension in -lXcomposite... $ECHO_C" >&6; } -+if test "${ac_cv_lib_Xcomposite_XCompositeQueryExtension+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ ac_check_lib_save_LIBS=$LIBS -+LIBS="-lXcomposite $LIBS" -+cat >conftest.$ac_ext <<_ACEOF -+/* confdefs.h. */ -+_ACEOF -+cat confdefs.h >>conftest.$ac_ext -+cat >>conftest.$ac_ext <<_ACEOF -+/* end confdefs.h. */ -+ -+/* Override any GCC internal prototype to avoid an error. -+ Use char because int might match the return type of a GCC -+ builtin and then its argument prototype would still apply. */ -+#ifdef __cplusplus -+extern "C" -+#endif -+char XCompositeQueryExtension (); -+int -+main () -+{ -+return XCompositeQueryExtension (); -+ ; -+ return 0; -+} -+_ACEOF -+rm -f conftest.$ac_objext conftest$ac_exeext -+if { (ac_try="$ac_link" -+case "(($ac_try" in -+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; -+ *) ac_try_echo=$ac_try;; -+esac -+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 -+ (eval "$ac_link") 2>conftest.er1 -+ ac_status=$? -+ grep -v '^ *+' conftest.er1 >conftest.err -+ rm -f conftest.er1 -+ cat conftest.err >&5 -+ echo "$as_me:$LINENO: \$? = $ac_status" >&5 -+ (exit $ac_status); } && { -+ test -z "$ac_cxx_werror_flag" || -+ test ! -s conftest.err -+ } && test -s conftest$ac_exeext && -+ $as_test_x conftest$ac_exeext; then -+ ac_cv_lib_Xcomposite_XCompositeQueryExtension=yes -+else -+ echo "$as_me: failed program was:" >&5 -+sed 's/^/| /' conftest.$ac_ext >&5 -+ -+ ac_cv_lib_Xcomposite_XCompositeQueryExtension=no -+fi -+ -+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ -+ conftest$ac_exeext conftest.$ac_ext -+LIBS=$ac_check_lib_save_LIBS -+fi -+{ echo "$as_me:$LINENO: result: $ac_cv_lib_Xcomposite_XCompositeQueryExtension" >&5 -+echo "${ECHO_T}$ac_cv_lib_Xcomposite_XCompositeQueryExtension" >&6; } -+if test $ac_cv_lib_Xcomposite_XCompositeQueryExtension = yes; then -+ cat >>confdefs.h <<_ACEOF -+#define HAVE_LIBXCOMPOSITE 1 -+_ACEOF -+ -+ LIBS="-lXcomposite $LIBS" -+ -+else -+ -+ echo "Warning: Xcomposite library not found" -+ echo "Please either install the Xcomposite library and headers, or ensure you have CONFIG_USE_COMPOSITE set to False in Config.h" -+ -+fi -+ -+ -+ - { echo "$as_me:$LINENO: checking for SmcOpenConnection in -lSM" >&5 - echo $ECHO_N "checking for SmcOpenConnection in -lSM... $ECHO_C" >&6; } - if test "${ac_cv_lib_SM_SmcOpenConnection+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -diff -NarU5 wmx-7.orig/configure.in wm2-wmx-trunk/wmx/configure.in ---- wmx-7.orig/configure.in 2009-01-09 06:18:03.000000000 -0500 -+++ wm2-wmx-trunk/wmx/configure.in 2009-01-19 11:57:15.000000000 -0500 -@@ -37,10 +37,16 @@ - AC_CHECK_LIB(Xpm, XpmCreatePixmapFromData, [], [ - echo "Warning: Xpm library not found" - echo "Please either install the Xpm library and headers, or ensure you have CONFIG_USE_PIXMAPS set to False in Config.h" - ]) - -+dnl Composite is necessary if CONFIG_USE_COMPOSITE -+AC_CHECK_LIB(Xcomposite, XCompositeQueryExtension, [], [ -+ echo "Warning: Xcomposite library not found" -+ echo "Please either install the Xcomposite library and headers, or ensure you have CONFIG_USE_COMPOSITE set to False in Config.h" -+ ]) -+ - dnl SM and ICE are necessary if CONFIG_USE_SESSION_MANAGER - AC_CHECK_LIB(SM, SmcOpenConnection) - AC_CHECK_LIB(ICE, IceConnectionNumber) - - dnl Freetype: actually only needed if CONFIG_USE_XFT -diff -NarU5 wmx-7.orig/Makefile.in wm2-wmx-trunk/wmx/Makefile.in ---- wmx-7.orig/Makefile.in 2009-01-09 06:18:03.000000000 -0500 -+++ wm2-wmx-trunk/wmx/Makefile.in 2009-01-19 14:12:30.000000000 -0500 -@@ -43,10 +43,15 @@ - cp wmx @bindir@/wmx - -chmod 0755 @bindir@/wmx - -chown root:wheel @bindir@/wmx - -rm -f @bindir@/wmx.old - -+install-rpm: -+ mkdir -p $(DESTDIR)/usr/bin/ -+ cp wmx $(DESTDIR)/usr/bin/wmx -+ -+ - # DO NOT DELETE -- make depend depends on it - Border.o: Border.C Border.h General.h Config.h Rotated.h Client.h \ - Manager.h listmacro.h background.xpm - Buttons.o: Buttons.C Manager.h General.h Config.h listmacro.h Client.h \ - Border.h Rotated.h Menu.h -diff -NarU5 wmx-7.orig/Manager.C wm2-wmx-trunk/wmx/Manager.C ---- wmx-7.orig/Manager.C 2009-01-09 06:18:03.000000000 -0500 -+++ wm2-wmx-trunk/wmx/Manager.C 2009-01-19 13:49:50.000000000 -0500 -@@ -13,10 +13,14 @@ - #include - - #include "Cursors.h" - #include - -+#ifdef CONFIG_USE_COMPOSITE -+#include -+#endif -+ - Atom Atoms::wm_state; - Atom Atoms::wm_changeState; - Atom Atoms::wm_protocols; - Atom Atoms::wm_delete; - Atom Atoms::wm_takeFocus; -@@ -242,10 +246,21 @@ - if (!m_display) fatal("can't open display"); - - m_shell = (char *)getenv("SHELL"); - if (!m_shell) m_shell = NewString("/bin/sh"); - -+#ifdef CONFIG_USE_COMPOSITE -+ int ev, er; -+ if (XCompositeQueryExtension(m_display, &ev, &er)) { -+ fprintf(stderr, "\n Enabling composite extension.\n"); -+ for (int i = 0; i < m_screensTotal; ++i) { -+ XCompositeRedirectSubwindows(m_display, RootWindow(m_display, i), -+ CompositeRedirectAutomatic); -+ } -+ } -+#endif -+ - // find out what the Alt keycode and thus modifier mask are - int kpk = 0; - int kmin = 0; - int kmax = 0; - XDisplayKeycodes(m_display, &kmin, &kmax); -diff -NarU5 wmx-7.orig/Menu.C wm2-wmx-trunk/wmx/Menu.C ---- wmx-7.orig/Menu.C 2009-01-09 06:18:03.000000000 -0500 -+++ wm2-wmx-trunk/wmx/Menu.C 2009-01-19 14:12:30.000000000 -0500 -@@ -54,10 +54,14 @@ - tokstr = 0; - - FcPattern *pattern = FcPatternCreate(); - FcPatternAddString(pattern, FC_FAMILY, (FcChar8 *)fi); - FcPatternAddInteger(pattern, FC_SLANT, FC_SLANT_ROMAN); -+ -+#ifndef FC_WEIGHT_REGULAR -+#define FC_WEIGHT_REGULAR FC_WEIGHT_MEDIUM -+#endif - FcPatternAddInteger(pattern, FC_WEIGHT, FC_WEIGHT_REGULAR); - FcPatternAddInteger(pattern, FC_PIXEL_SIZE, CONFIG_MENU_FONT_SIZE); - FcConfigSubstitute(FcConfigGetCurrent(), pattern, FcMatchPattern); - - FcResult result = FcResultMatch; diff --git a/wmx-7-cfg.patch b/wmx-8-cfg.patch similarity index 72% rename from wmx-7-cfg.patch rename to wmx-8-cfg.patch index b6ce74b..560bd60 100644 --- a/wmx-7-cfg.patch +++ b/wmx-8-cfg.patch @@ -1,7 +1,20 @@ -diff -NarU5 wmx-7.orig/Config.h wmx-7/Config.h ---- wmx-7.orig/Config.h 2009-01-09 06:18:03.000000000 -0500 -+++ wmx-7/Config.h 2009-01-13 13:23:31.000000000 -0500 -@@ -93,11 +93,11 @@ +diff -NarU5 wmx-8.orig/Config.h wmx-8/Config.h +--- wmx-8.orig/Config.h 2014-11-16 14:34:19.000000000 -0500 ++++ wmx-8/Config.h 2014-11-20 09:41:54.238623357 -0500 +@@ -77,11 +77,11 @@ + // Spawn a temporary new shell between the wm and each new process? + #define CONFIG_EXEC_USING_SHELL False + + // What to run to get a new window (from the "New" menu option) + #define CONFIG_NEW_WINDOW_LABEL "New" +-#define CONFIG_NEW_WINDOW_COMMAND "x-terminal-emulator" ++#define CONFIG_NEW_WINDOW_COMMAND "/usr/bin/xterm" + #define CONFIG_NEW_WINDOW_COMMAND_OPTIONS 0 + // or, for example, + //#define CONFIG_NEW_WINDOW_COMMAND_OPTIONS "-ls","-sb","-sl","1024",0 + // alternatively, + #define CONFIG_DISABLE_NEW_WINDOW_COMMAND (DynamicConfig::config.disableNew()) +@@ -92,11 +92,11 @@ // Directory under $HOME in which to look for commands for the // middle-button menu @@ -14,7 +27,7 @@ diff -NarU5 wmx-7.orig/Config.h wmx-7/Config.h #define CONFIG_ADD_SCREEN_TO_COMMAND_MENU False // Focus possibilities. -@@ -126,11 +126,11 @@ +@@ -125,11 +125,11 @@ // Number of pixels off the screen you have to push a window // before the manager notices the window is off-screen (the higher @@ -27,7 +40,7 @@ diff -NarU5 wmx-7.orig/Config.h wmx-7/Config.h // other window edges as well as the edges of the screen #define CONFIG_BUMP_EVERYWHERE True -@@ -185,11 +185,11 @@ +@@ -192,11 +192,11 @@ // This is the key for wm controls: e.g. Alt/Left and Alt/Right to // flip channels, and Alt/Tab to switch windows. (On my 105-key @@ -40,7 +53,7 @@ diff -NarU5 wmx-7.orig/Config.h wmx-7/Config.h // modifier is pressed; they're keysyms as defined in // and -@@ -329,11 +329,11 @@ +@@ -335,11 +335,11 @@ #define CONFIG_MENU_BORDERS "black" // Pixel width for the bit of frame to the left of the window and the @@ -53,7 +66,7 @@ diff -NarU5 wmx-7.orig/Config.h wmx-7/Config.h // ======================== // Section IV. Flashy stuff // ======================== -@@ -342,11 +342,11 @@ +@@ -348,11 +348,11 @@ // in ./background.xpm; if USE_PIXMAP_MENUS is also True, the menus // will be too. The latter screws up in palette-based visuals, but // should be okay in true-colour. diff --git a/wmx.spec b/wmx.spec index 10663a3..3ea685b 100644 --- a/wmx.spec +++ b/wmx.spec @@ -1,20 +1,20 @@ Name: wmx -Version: 7 -Release: 6%{?dist} +Version: 8 +Release: 28%{?dist} Summary: A really simple window manager for X -License: BSD -Group: User Interface/X +# Automatically converted from old format: BSD - review is highly recommended. +License: LicenseRef-Callaway-BSD URL: http://www.all-day-breakfast.com/wmx/ Source0: http://www.all-day-breakfast.com/wmx/%{name}-%{version}.tar.gz -Source1: wmx-defaults-1.tar.gz +Source1: wmx-defaults-3.tar.gz Source2: background.xpm Source3: wmx.desktop Source4: Xclients.wmx.sh -Source5: xnodecor.c -Patch0: wmx-7-composite.patch -Patch1: wmx-7-cfg.patch -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -BuildRequires: xorg-x11-proto-devel libX11-devel libXpm-devel libXext-devel libXaw-devel libXt-devel libXcomposite-devel freetype-devel libXft-devel +Patch0: wmx-8-cfg.patch +#wmx's 'New' button is hardcoded to start an xterm, better make sure we have it: +Requires: xterm +BuildRequires: make +BuildRequires: gcc-c++ xorg-x11-proto-devel libX11-devel libXpm-devel libXext-devel libXaw-devel libXt-devel libXcomposite-devel freetype-devel libXft-devel %description A really simple window manager for X, based on wm2, with a minimal set of @@ -24,29 +24,22 @@ configurable options. %setup -q %setup -q -a 1 %{__install} -p -m 0644 %{SOURCE2} . -%patch0 -p1 -%patch1 -p1 +%patch -P0 -p1 %build -%configure --x-libraries=%{_libdir} --x-includes=%{_includedir}/X11 +%configure --x-libraries=%{_libdir} --x-includes=%{_includedir}/X11 LIBS=-lfontconfig %{__make} %{?_smp_mflags} -%{__cc} -o xnodecor %{SOURCE5} -Werror -lX11 %install %{__rm} -rf %{buildroot} %{__install} -D -m 0755 wmx %{buildroot}%{_bindir}/wmx -%{__install} -D -m 0755 xnodecor %{buildroot}%{_bindir}/xnodecor %{__install} -d -m 0755 %{buildroot}%{_datadir}/%{name} -%{__install} -m 0755 wmx-defaults-1/* %{buildroot}%{_datadir}/%{name} +%{__install} -m 0755 wmx-defaults-3/* %{buildroot}%{_datadir}/%{name} %{__chmod} 0644 %{buildroot}%{_datadir}/%{name}/startup %{__install} -D -m 0644 %{SOURCE3} %{buildroot}%{_datadir}/xsessions/wmx.desktop %{__install} -D -m 0755 %{SOURCE4} %{buildroot}%{_sysconfdir}/X11/xinit/Xclients.d/Xclients.wmx.sh -%clean -%{__rm} -rf %{buildroot} - %files -%defattr(-,root,root) %doc README* UPDATES TODO.netwm rsharman-patch/ %{_bindir}/* %{_datadir}/%{name} @@ -54,6 +47,116 @@ configurable options. %{_sysconfdir}/X11/xinit/Xclients.d/* %changelog +* Fri Jul 17 2026 Fedora Release Engineering - 8-28 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild + +* Sat Jan 17 2026 Fedora Release Engineering - 8-27 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Fri Jul 25 2025 Fedora Release Engineering - 8-26 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Sun Jan 19 2025 Fedora Release Engineering - 8-25 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Wed Sep 04 2024 Miroslav Suchý - 8-24 +- convert license to SPDX + +* Sat Jul 20 2024 Fedora Release Engineering - 8-23 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Mon Jan 29 2024 Fedora Release Engineering - 8-22 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sat Jan 27 2024 Fedora Release Engineering - 8-21 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sat Jul 22 2023 Fedora Release Engineering - 8-20 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Sat Jan 21 2023 Fedora Release Engineering - 8-19 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Sat Jul 23 2022 Fedora Release Engineering - 8-18 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Sat Jan 22 2022 Fedora Release Engineering - 8-17 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Fri Jul 23 2021 Fedora Release Engineering - 8-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Jan 27 2021 Fedora Release Engineering - 8-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Wed Jul 29 2020 Fedora Release Engineering - 8-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Fri Jan 31 2020 Fedora Release Engineering - 8-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Sat Jul 27 2019 Fedora Release Engineering - 8-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Sun Feb 03 2019 Fedora Release Engineering - 8-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Mon Jul 23 2018 Gabriel Somlo 8-10 +- add "BuildRequires: gcc-c++" (#1606700) + +* Sat Jul 14 2018 Fedora Release Engineering - 8-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Feb 09 2018 Fedora Release Engineering - 8-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Thu Aug 03 2017 Fedora Release Engineering - 8-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 8-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sat Feb 11 2017 Fedora Release Engineering - 8-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Fri Feb 05 2016 Fedora Release Engineering - 8-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Fri Jun 19 2015 Fedora Release Engineering - 8-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sat May 02 2015 Kalev Lember - 8-2 +- Rebuilt for GCC 5 C++11 ABI change + +* Thu Nov 20 2014 Gabriel Somlo 8-1 +- update to 8 + +* Mon Aug 18 2014 Fedora Release Engineering - 7-14.20120109svn +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sun Jun 08 2014 Fedora Release Engineering - 7-13.20120109svn +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Sun Aug 04 2013 Fedora Release Engineering - 7-12.20120109svn +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Fri Feb 15 2013 Fedora Release Engineering - 7-11.20120109svn +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Sun Jul 22 2012 Fedora Release Engineering - 7-10.20120109svn +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Mon Jan 09 2012 Gabriel Somlo 7-9.20120109svn +- upgrade to latest svn checkout +- updated defaults +- dropped xnodecor + +* Mon Feb 07 2011 Fedora Release Engineering - 7-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Tue Dec 07 2010 Gabriel Somlo 7-7 +- explicitly link against libfontconfig (BZ 660741) + * Mon Mar 01 2010 Gabriel Somlo 7-6 - fixed directory ownership (BZ 569408) @@ -90,10 +193,10 @@ configurable options. * Fri Sep 08 2006 Gabriel Somlo 6pl1-14 - rebuilt for FC6MassRebuild -* Wed Jun 08 2006 Gabriel Somlo 6pl1-13 +* Thu Jun 08 2006 Gabriel Somlo 6pl1-13 - rebuild -* Wed Jun 08 2006 Gabriel Somlo 6pl1-12 +* Thu Jun 08 2006 Gabriel Somlo 6pl1-12 - more X11 buildrequires (thanks tibbs@math.uh.edu and Jarod Wilson) * Wed Jun 07 2006 Gabriel Somlo 6pl1-11 @@ -148,5 +251,5 @@ configurable options. * Tue Aug 09 2005 Gabriel Somlo 6pl1-0 - rebuilt for Fedora Core 4 -* Wed May 23 2004 Gabriel Somlo +* Sun May 23 2004 Gabriel Somlo - initial spec and packages. diff --git a/xnodecor.c b/xnodecor.c deleted file mode 100644 index 91ed79c..0000000 --- a/xnodecor.c +++ /dev/null @@ -1,141 +0,0 @@ -/* Copyright 1998 by Vadim Kolontsov - * All rights reserved - * - * Distribute freely, except: don't remove my name from the source or - * documentation (don't take credit for my work), mark your changes (don't - * get me blamed for your possible bugs), don't alter or remove this - * notice. May be sold if buildable source is provided to buyer. No - * warrantee of any kind, express or implied, is included with this - * software; use at your own risk, responsibility for damages (if any) to - * anyone resulting from the use of this software rests entirely with the - * user. - * - * Send bug reports, bug fixes, enhancements, requests, flames, etc., and - * I'll try to keep a version up to date. I can be reached as follows: - * - * Vadim Kolontsov - *----------------------------------------------------------------------- - * This program sets attribute "override_redirect" to True for any window - * you've specified (using window name). Window Managers should ignore - * such windows; it's useful, for example, if you're using wmx Window Manager, - * and want to have a clock on every virtual screen and without any - * borders. Just add the following string to your X-startfile (after - * starting watch app): - * - * xnodecor -w watch - * - * (assuming that your watch application has a window named "watch") - * - * For details see http://sb.123.org/xnodecor.html - * - * Tested on FreeBSD 2.2.2, XFree86 3.2, wmx-4 - * - * Compilation: - * - * gcc -o xnodecor xnodecor.c -L/usr/X11R6/lib -I/usr/X11R6/include -lX11 */ - -#include -#include -#include -#include -#include -#include - -#define WAIT_DEFAULT 0 -#define WAIT_TIMEOUT 15 -#define VERBOSE_DEFAULT 0 - -int main(int argc, char *argv[]) -{ - Display *d; - Window w1, w2, *wins; - int c; - XSetWindowAttributes a; - char *name, *program_name, *display_name = NULL; - unsigned int i, n, found = 0, - f_wait = WAIT_DEFAULT, - f_verbose = VERBOSE_DEFAULT, - delay = WAIT_TIMEOUT; - - if (argv && argv[0] && *argv[0]) - program_name = (program_name = rindex(argv[0], '/')) ? - (*++program_name ? program_name : "xnodecor") : argv[0]; - - while ((c = getopt(argc, argv, "vd:wt:h")) != EOF) - switch (c) - { - case 'd': - display_name = strdup(optarg); - break; - - case 'w': - f_wait = f_wait ? 0 : 1; - break; - - case 'v': - f_verbose = f_verbose ? 0 : 1; - break; - - case 't': - delay = atoi(optarg); - break; - - case 'h': - default: - fprintf(stderr, "Usage: %s [options] window-name\n\n" - " -d display specify alternative display\n" - " -w wait for specified window (default: %swait)\n" - " -t n timeout for waiting (default: %d sec)\n" - " -v verbose mode (default: %s)\n" - " -h this help\n\n", program_name, - f_wait ? "" : "no ", delay, - f_verbose ? "on" : "off"); - exit(0); - } - - argc -= optind; - argv += optind; - - if (argc != 1) - { - fprintf(stderr, "%s: Window name not specified\n", program_name); - exit(1); - } - - d = XOpenDisplay(display_name); - if (!d) - { - fprintf(stderr, "%s: Can't open display\n", program_name); - exit(1); - } - - do - { - if (XQueryTree(d, RootWindow(d, 0), &w1, &w2, &wins, &n) == 0) - { - fprintf(stderr, "%s: XQueryTree failed\n", program_name); - exit(1); - } - - found = 0; - for (i = 0; i < n; i++) - if (XFetchName(d, wins[i], &name)) - { - if (f_verbose) printf("%s\n", name); - if (!strcmp(name, argv[0])) - { - if (f_verbose) printf("(found!)\n"); - - a.override_redirect = 1; - XChangeWindowAttributes(d, wins[i], CWOverrideRedirect, &a); - found = 1; - } - } - - if (f_wait) - sleep(1); - } while (f_wait && delay-- && !found); - - XCloseDisplay(d); -} -