diff --git a/.cvsignore b/.cvsignore deleted file mode 100644 index 879b07e..0000000 --- a/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -wmx-6pl1.tar.gz -wmx-defaults.tar.gz diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..36498b8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +wmx-6pl1.tar.gz +wmx-defaults-1.tar.gz diff --git a/Makefile b/Makefile deleted file mode 100644 index 8cca39f..0000000 --- a/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Makefile for source rpm: wmx -# $Id$ -NAME := wmx -SPECFILE = $(firstword $(wildcard *.spec)) - -define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done -endef - -MAKEFILE_COMMON := $(shell $(find-makefile-common)) - -ifeq ($(MAKEFILE_COMMON),) -# attept a checkout -define checkout-makefile-common -test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 -endef - -MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) -endif - -include $(MAKEFILE_COMMON) diff --git a/sources b/sources index 185bab4..22294be 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ 212297d70acef90bbc9dac254de39cb8 wmx-6pl1.tar.gz -2cf73db613197fcc27304f71e188eb19 wmx-defaults.tar.gz +a5f221d36884276cbf331414d4f2a761 wmx-defaults-1.tar.gz diff --git a/wmx-6pl1-64b.patch b/wmx-6pl1-64b.patch deleted file mode 100644 index 7a81e60..0000000 --- a/wmx-6pl1-64b.patch +++ /dev/null @@ -1,31 +0,0 @@ ---- wmx-6pl1/Client.C.64b 2006-02-16 11:07:31.909626084 -0600 -+++ wmx-6pl1/Client.C 2006-02-16 11:08:02.499956573 -0600 -@@ -663,7 +663,7 @@ - } - - --int Client::getAtomProperty(Atom a, Atom type) -+size_t Client::getAtomProperty(Atom a, Atom type) - { - char **p, *x; - if (getProperty_aux(display(), m_window, a, type, 1L, -@@ -673,7 +673,7 @@ - - x = *p; - XFree((void *)p); -- return (int)x; -+ return (size_t)x; - } - - ---- wmx-6pl1/Client.h.64b 2006-02-16 11:07:37.465322869 -0600 -+++ wmx-6pl1/Client.h 2006-02-16 11:08:19.883007902 -0600 -@@ -184,7 +184,7 @@ - WindowManager *const m_windowManager; - - char *getProperty(Atom); -- int getAtomProperty(Atom, Atom); -+ size_t getAtomProperty(Atom, Atom); - int getIntegerProperty(Atom); - - // accessors diff --git a/wmx-6pl1-cfg.patch b/wmx-6pl1-cfg.patch index 1e0020a..dc168f6 100644 --- a/wmx-6pl1-cfg.patch +++ b/wmx-6pl1-cfg.patch @@ -1,6 +1,6 @@ diff -NarU5 wmx-6pl1.orig/Config.h wmx-6pl1/Config.h ---- wmx-6pl1.orig/Config.h 2006-06-04 13:57:06.000000000 -0400 -+++ wmx-6pl1/Config.h 2006-06-04 13:59:12.000000000 -0400 +--- wmx-6pl1.orig/Config.h 2007-12-25 17:08:03.000000000 -0500 ++++ wmx-6pl1/Config.h 2007-12-25 17:10:44.000000000 -0500 @@ -75,11 +75,10 @@ #define CONFIG_EXEC_USING_SHELL False @@ -52,6 +52,19 @@ diff -NarU5 wmx-6pl1.orig/Config.h wmx-6pl1/Config.h // modifier is pressed; they're keysyms as defined in // and +@@ -284,11 +283,11 @@ + // standard X cursor font; otherwise it will install its own. You may + // wish to set this if your X client and server are on different + // endian machines, or if you've aliased the cursor font to something + // else you like better, or if you just prefer the plain X cursors + +-#define CONFIG_USE_PLAIN_X_CURSORS False ++#define CONFIG_USE_PLAIN_X_CURSORS True + + // Colours for window decorations. The BORDERS one is for the + // one-pixel border around the edge of each piece of decoration, not + // for the whole decoration + @@ -304,11 +303,11 @@ #define CONFIG_MENU_BORDERS "black" diff --git a/wmx-6pl1-cfgbug.patch b/wmx-6pl1-cfgbug.patch deleted file mode 100644 index 2ed40a6..0000000 --- a/wmx-6pl1-cfgbug.patch +++ /dev/null @@ -1,32 +0,0 @@ -diff -NarU5 wmx-6pl1.orig/Config.C wmx-6pl1/Config.C ---- wmx-6pl1.orig/Config.C 2006-06-04 14:23:33.000000000 -0400 -+++ wmx-6pl1/Config.C 2006-06-04 14:25:03.000000000 -0400 -@@ -149,13 +149,25 @@ - if (OPTION("off")) m_impl->rightBt = 0; - else if (OPTION("circulate")) m_impl->rightBt = 1; - else if (OPTION("lower")) m_impl->rightBt = 2; - else if (OPTION("toggleheight")) m_impl->rightBt = 4; - -- if (OPTION("tabfg:")) strncpy(m_impl->tabfg, s, COLOR_LEN); -- if (OPTION("tabbg:")) strncpy(m_impl->tabbg, s, COLOR_LEN); -- if (OPTION("framebg:")) strncpy(m_impl->framebg, s, COLOR_LEN); -+ if (OPTION("tabfg:")) { -+ strncpy(m_impl->tabfg, s, COLOR_LEN); -+ m_impl->tabfg[COLOR_LEN-1] = '\0'; // prevent unterminated string -+ s += strlen(m_impl->tabfg); // avoid error message below -+ } -+ if (OPTION("tabbg:")) { -+ strncpy(m_impl->tabbg, s, COLOR_LEN); -+ m_impl->tabbg[COLOR_LEN-1] = '\0'; -+ s += strlen(m_impl->tabbg); -+ } -+ if (OPTION("framebg:")) { -+ strncpy(m_impl->framebg, s, COLOR_LEN); -+ m_impl->framebg[COLOR_LEN-1] = '\0'; -+ s += strlen(m_impl->framebg); -+ } - - if (*s != '\0') { - fprintf(stderr, "\nwmx: Dynamic configuration error: " - "`%s' @ position %d", s, string - s); - } diff --git a/wmx-6pl1-cvs20060602.patch b/wmx-6pl1-cvs20071113.patch similarity index 92% rename from wmx-6pl1-cvs20060602.patch rename to wmx-6pl1-cvs20071113.patch index ee2cf1b..fd48839 100644 --- a/wmx-6pl1-cvs20060602.patch +++ b/wmx-6pl1-cvs20071113.patch @@ -1,6 +1,6 @@ -diff -NarU5 wmx-6pl1/Border.C wmx-cvs-2006-06-02/Border.C +diff -NarU5 wmx-6pl1/Border.C wmx-cvs-2007-11-13/Border.C --- wmx-6pl1/Border.C 2001-04-04 05:02:34.000000000 -0400 -+++ wmx-cvs-2006-06-02/Border.C 2003-08-14 08:54:22.000000000 -0400 ++++ wmx-cvs-2007-11-13/Border.C 2003-08-14 08:54:22.000000000 -0400 @@ -84,13 +84,15 @@ if (!m_parent) fprintf(stderr,"wmx: zero parent in Border::~Border\n"); else { @@ -39,9 +39,9 @@ diff -NarU5 wmx-6pl1/Border.C wmx-cvs-2006-06-02/Border.C 0, 0, rl.xrectangles(), rl.count(), visible ? ShapeUnion : ShapeSubtract, YXSorted); rl.remove_all(); -diff -NarU5 wmx-6pl1/Buttons.C wmx-cvs-2006-06-02/Buttons.C +diff -NarU5 wmx-6pl1/Buttons.C wmx-cvs-2007-11-13/Buttons.C --- wmx-6pl1/Buttons.C 2001-04-24 04:56:39.000000000 -0400 -+++ wmx-cvs-2006-06-02/Buttons.C 2003-08-14 09:07:12.000000000 -0400 ++++ wmx-cvs-2007-11-13/Buttons.C 2003-08-14 09:07:12.000000000 -0400 @@ -16,18 +16,18 @@ enum {Vertical, Maximum, Horizontal}; setScreenFromPointer(); @@ -358,9 +358,9 @@ diff -NarU5 wmx-6pl1/Buttons.C wmx-cvs-2006-06-02/Buttons.C if (vertical && horizontal) { m_w = x - m_x; -diff -NarU5 wmx-6pl1/Buttons.C.rej wmx-cvs-2006-06-02/Buttons.C.rej +diff -NarU5 wmx-6pl1/Buttons.C.rej wmx-cvs-2007-11-13/Buttons.C.rej --- wmx-6pl1/Buttons.C.rej 2001-04-24 04:58:31.000000000 -0400 -+++ wmx-cvs-2006-06-02/Buttons.C.rej 1969-12-31 19:00:00.000000000 -0500 ++++ wmx-cvs-2007-11-13/Buttons.C.rej 1969-12-31 19:00:00.000000000 -0500 @@ -1,75 +0,0 @@ -*************** -*** 173,179 **** @@ -437,9 +437,9 @@ diff -NarU5 wmx-6pl1/Buttons.C.rej wmx-cvs-2006-06-02/Buttons.C.rej - #if CONFIG_WANT_SUNPOWERKEY - if (key == SunXK_PowerSwitch) { - pid_t pid = fork(); -diff -NarU5 wmx-6pl1/Channel.C wmx-cvs-2006-06-02/Channel.C +diff -NarU5 wmx-6pl1/Channel.C wmx-cvs-2007-11-13/Channel.C --- wmx-6pl1/Channel.C 2001-04-24 04:58:31.000000000 -0400 -+++ wmx-cvs-2006-06-02/Channel.C 2003-08-17 09:56:59.000000000 -0400 ++++ wmx-cvs-2007-11-13/Channel.C 2003-08-17 09:56:59.000000000 -0400 @@ -42,13 +42,14 @@ XSetWindowAttributes wa; wa.background_pixel = nearest.pixel; @@ -488,9 +488,9 @@ diff -NarU5 wmx-6pl1/Channel.C wmx-cvs-2006-06-02/Channel.C || (push && push->hasWindow(considering.item(i)->groupParent())) #endif -diff -NarU5 wmx-6pl1/Channel.C.orig wmx-cvs-2006-06-02/Channel.C.orig +diff -NarU5 wmx-6pl1/Channel.C.orig wmx-cvs-2007-11-13/Channel.C.orig --- wmx-6pl1/Channel.C.orig 2000-05-24 11:46:14.000000000 -0400 -+++ wmx-cvs-2006-06-02/Channel.C.orig 1969-12-31 19:00:00.000000000 -0500 ++++ wmx-cvs-2007-11-13/Channel.C.orig 1969-12-31 19:00:00.000000000 -0500 @@ -1,220 +0,0 @@ - -#include "Manager.h" @@ -712,9 +712,9 @@ diff -NarU5 wmx-6pl1/Channel.C.orig wmx-cvs-2006-06-02/Channel.C.orig - } - } -} -diff -NarU5 wmx-6pl1/Client.C wmx-cvs-2006-06-02/Client.C +diff -NarU5 wmx-6pl1/Client.C wmx-cvs-2007-11-13/Client.C --- wmx-6pl1/Client.C 2000-05-12 03:40:20.000000000 -0400 -+++ wmx-cvs-2006-06-02/Client.C 2003-08-12 10:50:47.000000000 -0400 ++++ wmx-cvs-2007-11-13/Client.C 2007-10-11 11:10:32.000000000 -0400 @@ -73,11 +73,11 @@ } @@ -803,7 +803,39 @@ diff -NarU5 wmx-6pl1/Client.C wmx-cvs-2006-06-02/Client.C installColormap(); // new! } -@@ -1213,10 +1219,13 @@ +@@ -660,31 +666,10 @@ + return NULL; + } + return (char *)p; + } + +- +-int Client::getAtomProperty(Atom a, Atom type) +-{ +- char **p, *x; +- if (getProperty_aux(display(), m_window, a, type, 1L, +- (unsigned char **)&p) <= 0) { +- return 0; +- } +- +- x = *p; +- XFree((void *)p); +- return (int)x; +-} +- +- +-int Client::getIntegerProperty(Atom a) +-{ +- return getAtomProperty(a, XA_INTEGER); +-} +- +- + void Client::setState(int state) + { + m_state = state; + + long data[2]; +@@ -1213,10 +1198,13 @@ if (CONFIG_MAD_FEEDBACK) { removeFeedback(isNormal()); // mostly it won't be there anyway, but... } @@ -817,9 +849,9 @@ diff -NarU5 wmx-6pl1/Client.C wmx-cvs-2006-06-02/Client.C withdraw(False); return; -diff -NarU5 wmx-6pl1/Client.h wmx-cvs-2006-06-02/Client.h +diff -NarU5 wmx-6pl1/Client.h wmx-cvs-2007-11-13/Client.h --- wmx-6pl1/Client.h 2001-04-24 04:58:31.000000000 -0400 -+++ wmx-cvs-2006-06-02/Client.h 2003-08-12 10:49:35.000000000 -0400 ++++ wmx-cvs-2007-11-13/Client.h 2007-10-11 11:10:33.000000000 -0400 @@ -136,11 +136,11 @@ int m_w; int m_h; @@ -833,9 +865,22 @@ diff -NarU5 wmx-6pl1/Client.h wmx-cvs-2006-06-02/Client.h int m_channel; Boolean m_unmappedForChannel; Boolean m_sticky; -diff -NarU5 wmx-6pl1/Config.C wmx-cvs-2006-06-02/Config.C +@@ -182,12 +182,10 @@ + Colormap *m_windowColormaps; + + WindowManager *const m_windowManager; + + char *getProperty(Atom); +- int getAtomProperty(Atom, Atom); +- int getIntegerProperty(Atom); + + // accessors + Boolean getState(int *); + void setState(int); + +diff -NarU5 wmx-6pl1/Config.C wmx-cvs-2007-11-13/Config.C --- wmx-6pl1/Config.C 2000-03-02 08:56:35.000000000 -0500 -+++ wmx-cvs-2006-06-02/Config.C 2003-08-14 09:07:12.000000000 -0400 ++++ wmx-cvs-2007-11-13/Config.C 2006-06-19 07:08:35.000000000 -0400 @@ -5,11 +5,14 @@ #include #include @@ -894,15 +939,27 @@ diff -NarU5 wmx-6pl1/Config.C wmx-cvs-2006-06-02/Config.C { char temp[1000]; memset(temp, 0, 1000); -@@ -137,16 +149,20 @@ +@@ -137,16 +149,32 @@ if (OPTION("off")) m_impl->rightBt = 0; else if (OPTION("circulate")) m_impl->rightBt = 1; else if (OPTION("lower")) m_impl->rightBt = 2; else if (OPTION("toggleheight")) m_impl->rightBt = 4; -+ if (OPTION("tabfg:")) strncpy(m_impl->tabfg, s, COLOR_LEN); -+ if (OPTION("tabbg:")) strncpy(m_impl->tabbg, s, COLOR_LEN); -+ if (OPTION("framebg:")) strncpy(m_impl->framebg, s, COLOR_LEN); ++ if (OPTION("tabfg:")) { ++ strncpy(m_impl->tabfg, s, COLOR_LEN); ++ m_impl->tabfg[COLOR_LEN-1] = '\0'; // prevent unterminated string ++ s += strlen(m_impl->tabfg); // avoid error message below ++ } ++ if (OPTION("tabbg:")) { ++ strncpy(m_impl->tabbg, s, COLOR_LEN); ++ m_impl->tabbg[COLOR_LEN-1] = '\0'; ++ s += strlen(m_impl->tabbg); ++ } ++ if (OPTION("framebg:")) { ++ strncpy(m_impl->framebg, s, COLOR_LEN); ++ m_impl->framebg[COLOR_LEN-1] = '\0'; ++ s += strlen(m_impl->framebg); ++ } + if (*s != '\0') { fprintf(stderr, "\nwmx: Dynamic configuration error: " @@ -916,9 +973,9 @@ diff -NarU5 wmx-6pl1/Config.C wmx-cvs-2006-06-02/Config.C #undef OPTION } -diff -NarU5 wmx-6pl1/config.cache wmx-cvs-2006-06-02/config.cache +diff -NarU5 wmx-6pl1/config.cache wmx-cvs-2007-11-13/config.cache --- wmx-6pl1/config.cache 2001-04-23 08:09:21.000000000 -0400 -+++ wmx-cvs-2006-06-02/config.cache 1969-12-31 19:00:00.000000000 -0500 ++++ wmx-cvs-2007-11-13/config.cache 1969-12-31 19:00:00.000000000 -0500 @@ -1,26 +0,0 @@ -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure @@ -946,9 +1003,9 @@ diff -NarU5 wmx-6pl1/config.cache wmx-cvs-2006-06-02/config.cache -ac_cv_prog_cxx_works=${ac_cv_prog_cxx_works='yes'} -ac_cv_prog_gxx=${ac_cv_prog_gxx='yes'} -ac_cv_prog_make_make_set=${ac_cv_prog_make_make_set='yes'} -diff -NarU5 wmx-6pl1/Config.h wmx-cvs-2006-06-02/Config.h +diff -NarU5 wmx-6pl1/Config.h wmx-cvs-2007-11-13/Config.h --- wmx-6pl1/Config.h 2001-04-23 11:48:31.000000000 -0400 -+++ wmx-cvs-2006-06-02/Config.h 2003-08-14 09:07:12.000000000 -0400 ++++ wmx-cvs-2007-11-13/Config.h 2003-08-14 09:07:12.000000000 -0400 @@ -49,41 +49,42 @@ int feedbackDelay(); char disableNew(); @@ -1129,9 +1186,9 @@ diff -NarU5 wmx-6pl1/Config.h wmx-cvs-2006-06-02/Config.h // and when you press CONFIG_ALT_KEY_MASK and the number key // all the windows of that group are raised. -diff -NarU5 wmx-6pl1/config.log wmx-cvs-2006-06-02/config.log +diff -NarU5 wmx-6pl1/config.log wmx-cvs-2007-11-13/config.log --- wmx-6pl1/config.log 2001-04-24 04:58:56.000000000 -0400 -+++ wmx-cvs-2006-06-02/config.log 1969-12-31 19:00:00.000000000 -0500 ++++ wmx-cvs-2007-11-13/config.log 1969-12-31 19:00:00.000000000 -0500 @@ -1,17 +0,0 @@ -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. @@ -1150,9 +1207,9 @@ diff -NarU5 wmx-6pl1/config.log wmx-cvs-2006-06-02/config.log -configure:1099: checking for XpmCreatePixmapFromData in -lXpm -configure:1154: checking for twm -configure:1193: checking whether you're still watching -diff -NarU5 wmx-6pl1/config.status wmx-cvs-2006-06-02/config.status +diff -NarU5 wmx-6pl1/config.status wmx-cvs-2007-11-13/config.status --- wmx-6pl1/config.status 2001-04-24 04:58:56.000000000 -0400 -+++ wmx-cvs-2006-06-02/config.status 1969-12-31 19:00:00.000000000 -0500 ++++ wmx-cvs-2007-11-13/config.status 1969-12-31 19:00:00.000000000 -0500 @@ -1,153 +0,0 @@ -#! /bin/sh -# Generated automatically by configure. @@ -1307,18 +1364,18 @@ diff -NarU5 wmx-6pl1/config.status wmx-cvs-2006-06-02/config.status - - -exit 0 -diff -NarU5 wmx-6pl1/CVS/Entries wmx-cvs-2006-06-02/CVS/Entries +diff -NarU5 wmx-6pl1/CVS/Entries wmx-cvs-2007-11-13/CVS/Entries --- wmx-6pl1/CVS/Entries 1969-12-31 19:00:00.000000000 -0500 -+++ wmx-cvs-2006-06-02/CVS/Entries 2006-06-02 10:50:25.000000000 -0400 ++++ wmx-cvs-2007-11-13/CVS/Entries 2007-11-13 20:50:32.000000000 -0500 @@ -0,0 +1,29 @@ +/ANNOYING-BUGS/1.1/Tue Aug 12 13:24:10 2003// +/Border.C/1.9/Thu Aug 14 12:54:22 2003// +/Border.h/1.4/Tue Aug 12 13:11:19 2003// +/Buttons.C/1.14/Thu Aug 14 13:07:12 2003// +/Channel.C/1.11/Sun Aug 17 13:56:59 2003// -+/Client.C/1.11/Tue Aug 12 14:50:47 2003// -+/Client.h/1.9/Tue Aug 12 14:49:35 2003// -+/Config.C/1.4/Thu Aug 14 13:07:12 2003// ++/Client.C/1.12/Thu Oct 11 15:10:32 2007// ++/Client.h/1.10/Thu Oct 11 15:10:33 2007// ++/Config.C/1.5/Mon Jun 19 11:08:35 2006// +/Config.h/1.15/Thu Aug 14 13:07:12 2003// +/Cursors.h/1.1/Tue Aug 12 12:55:17 2003// +/Events.C/1.9/Thu Aug 14 13:07:12 2003// @@ -1340,19 +1397,19 @@ diff -NarU5 wmx-6pl1/CVS/Entries wmx-cvs-2006-06-02/CVS/Entries +/configure.in/1.1/Tue Aug 12 13:11:19 2003// +/listmacro.h/1.1/Tue Aug 12 13:07:39 2003// +D -diff -NarU5 wmx-6pl1/CVS/Repository wmx-cvs-2006-06-02/CVS/Repository +diff -NarU5 wmx-6pl1/CVS/Repository wmx-cvs-2007-11-13/CVS/Repository --- wmx-6pl1/CVS/Repository 1969-12-31 19:00:00.000000000 -0500 -+++ wmx-cvs-2006-06-02/CVS/Repository 2006-06-02 10:50:25.000000000 -0400 ++++ wmx-cvs-2007-11-13/CVS/Repository 2007-11-13 20:50:32.000000000 -0500 @@ -0,0 +1 @@ +wmx -diff -NarU5 wmx-6pl1/CVS/Root wmx-cvs-2006-06-02/CVS/Root +diff -NarU5 wmx-6pl1/CVS/Root wmx-cvs-2007-11-13/CVS/Root --- wmx-6pl1/CVS/Root 1969-12-31 19:00:00.000000000 -0500 -+++ wmx-cvs-2006-06-02/CVS/Root 2006-06-02 10:50:25.000000000 -0400 ++++ wmx-cvs-2007-11-13/CVS/Root 2007-11-13 20:50:32.000000000 -0500 @@ -0,0 +1 @@ +:pserver:anonymous@wm2.cvs.sourceforge.net:/cvsroot/wm2 -diff -NarU5 wmx-6pl1/Events.C wmx-cvs-2006-06-02/Events.C +diff -NarU5 wmx-6pl1/Events.C wmx-cvs-2007-11-13/Events.C --- wmx-6pl1/Events.C 2001-08-31 04:02:49.000000000 -0400 -+++ wmx-cvs-2006-06-02/Events.C 2003-08-14 09:07:12.000000000 -0400 ++++ wmx-cvs-2007-11-13/Events.C 2003-08-14 09:07:12.000000000 -0400 @@ -244,11 +244,11 @@ void WindowManager::checkDelaysForFocus() @@ -1379,9 +1436,9 @@ diff -NarU5 wmx-6pl1/Events.C wmx-cvs-2006-06-02/Events.C // if (m_focusCandidate->isNormal()) m_focusCandidate->mapRaised(); // stopConsideringFocus(); -diff -NarU5 wmx-6pl1/Makefile wmx-cvs-2006-06-02/Makefile +diff -NarU5 wmx-6pl1/Makefile wmx-cvs-2007-11-13/Makefile --- wmx-6pl1/Makefile 2001-04-24 04:58:56.000000000 -0400 -+++ wmx-cvs-2006-06-02/Makefile 1969-12-31 19:00:00.000000000 -0500 ++++ wmx-cvs-2007-11-13/Makefile 1969-12-31 19:00:00.000000000 -0500 @@ -1,69 +0,0 @@ -# Generated automatically from Makefile.in by configure. - @@ -1452,9 +1509,9 @@ diff -NarU5 wmx-6pl1/Makefile wmx-cvs-2006-06-02/Makefile - Client.h Border.h Rotated.h -Rotated.o: Rotated.C Config.h Rotated.h -Session.o: Session.C Manager.h General.h Config.h listmacro.h -diff -NarU5 wmx-6pl1/Manager.C wmx-cvs-2006-06-02/Manager.C +diff -NarU5 wmx-6pl1/Manager.C wmx-cvs-2007-11-13/Manager.C --- wmx-6pl1/Manager.C 2001-04-23 05:10:42.000000000 -0400 -+++ wmx-cvs-2006-06-02/Manager.C 2003-08-14 09:07:12.000000000 -0400 ++++ wmx-cvs-2007-11-13/Manager.C 2003-08-14 09:07:12.000000000 -0400 @@ -53,18 +53,19 @@ m_altModMask(0) // later { @@ -1549,9 +1606,9 @@ diff -NarU5 wmx-6pl1/Manager.C wmx-cvs-2006-06-02/Manager.C static Window w = 0; Client *active = activeClient(); -diff -NarU5 wmx-6pl1/Manager.h wmx-cvs-2006-06-02/Manager.h +diff -NarU5 wmx-6pl1/Manager.h wmx-cvs-2007-11-13/Manager.h --- wmx-6pl1/Manager.h 2001-04-24 04:58:31.000000000 -0400 -+++ wmx-cvs-2006-06-02/Manager.h 2003-08-12 10:50:47.000000000 -0400 ++++ wmx-cvs-2007-11-13/Manager.h 2003-08-12 10:50:47.000000000 -0400 @@ -25,11 +25,11 @@ Client *activeClient() { return m_activeClient; } Boolean raiseTransients(Client *); // true if raised any @@ -1565,9 +1622,9 @@ diff -NarU5 wmx-6pl1/Manager.h wmx-cvs-2006-06-02/Manager.h void removeFromHiddenList(Client *); void skipInRevert(Client *, Client *); -diff -NarU5 wmx-6pl1/Menu.C wmx-cvs-2006-06-02/Menu.C +diff -NarU5 wmx-6pl1/Menu.C wmx-cvs-2007-11-13/Menu.C --- wmx-6pl1/Menu.C 2001-10-05 09:01:21.000000000 -0400 -+++ wmx-cvs-2006-06-02/Menu.C 2003-08-14 09:07:12.000000000 -0400 ++++ wmx-cvs-2007-11-13/Menu.C 2003-08-14 09:07:12.000000000 -0400 @@ -25,12 +25,13 @@ #define STRLEN_MITEMS(i) strlen(m_items[(i)]) #endif @@ -1611,9 +1668,9 @@ diff -NarU5 wmx-6pl1/Menu.C wmx-cvs-2006-06-02/Menu.C const char *home = getenv("HOME"); const char *wmxdir = getenv("WMXDIR"); -diff -NarU5 wmx-6pl1/UPDATES wmx-cvs-2006-06-02/UPDATES +diff -NarU5 wmx-6pl1/UPDATES wmx-cvs-2007-11-13/UPDATES --- wmx-6pl1/UPDATES 2000-05-11 12:42:30.000000000 -0400 -+++ wmx-cvs-2006-06-02/UPDATES 2003-08-12 10:49:35.000000000 -0400 ++++ wmx-cvs-2007-11-13/UPDATES 2003-08-12 10:49:35.000000000 -0400 @@ -1,7 +1,12 @@ /* vim:set ts=4 ai: ,e to add info */ diff --git a/wmx.spec b/wmx.spec index 2646b6b..b207514 100644 --- a/wmx.spec +++ b/wmx.spec @@ -1,19 +1,18 @@ Name: wmx Version: 6pl1 -Release: 14%{?dist} +Release: 17%{?dist} Summary: A really simple window manager for X License: BSD Group: User Interface/X URL: http://www.all-day-breakfast.com/wmx/ Source0: http://www.all-day-breakfast.com/wmx/%{name}-%{version}.tar.gz -Source1: wmx-defaults.tar.gz +Source1: wmx-defaults-1.tar.gz Source2: background.xpm Source3: wmx.desktop Source4: Xclients.wmx.sh -Patch0: wmx-6pl1-cvs20060602.patch -Patch1: wmx-6pl1-64b.patch -Patch2: wmx-6pl1-cfgbug.patch -Patch3: wmx-6pl1-cfg.patch +Source5: xnodecor.c +Patch0: wmx-6pl1-cvs20071113.patch +Patch1: wmx-6pl1-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 @@ -27,18 +26,18 @@ configurable options. %{__install} -p %{SOURCE2} . %patch0 -p1 %patch1 -p1 -%patch2 -p1 -%patch3 -p1 %build %configure --x-libraries=%{_libdir} --x-includes=%{_includedir}/X11 %{__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/* %{buildroot}%{_datadir}/%{name} +%{__install} -m 0755 wmx-defaults-1/* %{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 @@ -54,6 +53,17 @@ configurable options. %{_sysconfdir}/X11/xinit/Xclients.d/* %changelog +* Tue Dec 25 2007 Gabriel Somlo 6pl1-17 +- changed build config option to use default X cursor fonts + +* Sat Nov 17 2007 Gabriel Somlo 6pl1-16 +- rebuild + +* Tue Nov 13 2007 Gabriel Somlo 6pl1-15 +- patch containing latest cvs fixes +- added xnodecor.c from ftp://ftp.42.org/pub/wmx/contrib/xnodecor.c +- updated default menu entries + * Fri Sep 08 2006 Gabriel Somlo 6pl1-14 - rebuilt for FC6MassRebuild diff --git a/xnodecor.c b/xnodecor.c new file mode 100644 index 0000000..91ed79c --- /dev/null +++ b/xnodecor.c @@ -0,0 +1,141 @@ +/* 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); +} +