aboutsummaryrefslogtreecommitdiff
path: root/x11-wm
diff options
context:
space:
mode:
Diffstat (limited to 'x11-wm')
-rw-r--r--x11-wm/libwraster/Makefile51
-rw-r--r--x11-wm/libwraster/pkg-descr2
-rw-r--r--x11-wm/libwraster/pkg-plist7
-rw-r--r--x11-wm/windowmaker/Makefile79
-rw-r--r--x11-wm/windowmaker/distinfo4
-rw-r--r--x11-wm/windowmaker/files/LINGUAS1
-rw-r--r--x11-wm/windowmaker/files/extra_dockhotkeys.patch446
-rw-r--r--x11-wm/windowmaker/files/patch-WINGs_wview.c23
-rw-r--r--x11-wm/windowmaker/files/patch-WINGs_wwindow.c19
-rw-r--r--x11-wm/windowmaker/files/patch-ag26
-rw-r--r--x11-wm/windowmaker/files/patch-am9
-rw-r--r--x11-wm/windowmaker/files/patch-src_actions.c35
-rw-r--r--x11-wm/windowmaker/files/patch-src_dock.c11
-rw-r--r--x11-wm/windowmaker/files/patch-src_event.c13
-rw-r--r--x11-wm/windowmaker/files/patch-src_switchpanel.c42
-rw-r--r--x11-wm/windowmaker/files/patch-src_wmspec.c118
-rw-r--r--x11-wm/windowmaker/files/patch-wrlib_load.c11
-rw-r--r--x11-wm/windowmaker/files/patch-wrlib_x86_specific.c130
-rw-r--r--x11-wm/windowmaker/pkg-descr2
-rw-r--r--x11-wm/windowmaker/pkg-plist151
20 files changed, 126 insertions, 1054 deletions
diff --git a/x11-wm/libwraster/Makefile b/x11-wm/libwraster/Makefile
index 29a18deea275..6a2ec345a9d4 100644
--- a/x11-wm/libwraster/Makefile
+++ b/x11-wm/libwraster/Makefile
@@ -3,67 +3,32 @@
# Whom: Doug Barton <dougb@FreeBSD.org>
#
# $FreeBSD$
-#
PORTNAME= libwraster
-PORTVERSION= 0.92.0
-PORTREVISION= 3
-CATEGORIES= x11-wm windowmaker
-MASTER_SITES= ${MASTER_SITE_WINDOWMAKER} \
- http://dougbarton.us/Downloads/
-MASTER_SITE_SUBDIR= source/release
-DISTNAME= WindowMaker-${PORTVERSION}
+PORTREVISION= 0
-MAINTAINER= dougb@FreeBSD.org
COMMENT= libwraster from Window Maker
-LIB_DEPENDS= gif.5:${PORTSDIR}/graphics/giflib \
- png.6:${PORTSDIR}/graphics/png \
- tiff.4:${PORTSDIR}/graphics/tiff
-
-MAKE_JOBS_SAFE= yes
+MASTERDIR= ${.CURDIR}/../windowmaker
-USE_AUTOTOOLS= libtool
-USE_BZIP2= yes
-USE_GNOME= pkgconfig
-USE_XORG= xpm xft
-USE_PERL5= yes
-USE_GETTEXT= yes
-GNU_CONFIGURE= yes
-CPPFLAGS+= -I${LOCALBASE}/include
-LDFLAGS+= -L${LOCALBASE}/lib
-CONFIGURE_ARGS= --with-pixmapdir=${PREFIX}/include/X11/pixmaps \
- --with-nlsdir=${PREFIX}/share/locale \
- --with-libs-from="-L${LOCALBASE}/lib" \
- --with-incs-from="-I${LOCALBASE}/include" \
- --with-gnustepdir="${PREFIX}/GNUstep" \
- --disable-debug
-USE_LDCONFIG= yes
+LWR_SLAVE= yes
-PATCHDIR= ${.CURDIR}/../windowmaker/files
-DISTINFO_FILE= ${.CURDIR}/../windowmaker/distinfo
+PATCHDIR= # To void equivalent in master port
+DESCR= ${.CURDIR}/pkg-descr
+PLIST= ${.CURDIR}/pkg-plist
CONFLICTS= windowmaker-0.*
-PLIST_FILES= bin/get-wraster-flags include/wraster.h lib/libwraster.a \
- lib/libwraster.la lib/libwraster.so lib/libwraster.so.4 \
- libdata/pkgconfig/wrlib.pc
-
-.include <bsd.port.pre.mk>
-
-.if ${ARCH} == amd64
-CONFIGURE_ENV+= ac_cv_c_inline_asm=no
-.endif
-
post-patch:
@${CP} ${WRKSRC}/wrlib/Makefile.in ${WRKSRC}/wrlib/Makefile.in.presed
@${SED} -e s#$$\(libdir\)/pkgconfig#${PREFIX}/libdata/pkgconfig#g \
${WRKSRC}/wrlib/Makefile.in.presed > ${WRKSRC}/wrlib/Makefile.in
do-build:
+ cd ${WRKSRC} && ${MAKE} config-paths.h
cd ${WRKSRC}/wrlib && ${MAKE}
do-install:
cd ${WRKSRC}/wrlib && ${MAKE} install
-.include <bsd.port.post.mk>
+.include "${MASTERDIR}/Makefile"
diff --git a/x11-wm/libwraster/pkg-descr b/x11-wm/libwraster/pkg-descr
index 93be650463b5..8f09613998c5 100644
--- a/x11-wm/libwraster/pkg-descr
+++ b/x11-wm/libwraster/pkg-descr
@@ -3,4 +3,4 @@ This is the libwraster library from x11-wm/windowmaker.
The purpose of this port is to allow dockapp ports the choice of
depending on the full Window Maker port, or just the library.
-WWW: http://www.windowmaker.info/
+WWW: http://www.windowmaker.org/
diff --git a/x11-wm/libwraster/pkg-plist b/x11-wm/libwraster/pkg-plist
new file mode 100644
index 000000000000..5c882105b3cc
--- /dev/null
+++ b/x11-wm/libwraster/pkg-plist
@@ -0,0 +1,7 @@
+bin/get-wraster-flags
+include/wraster.h
+lib/libwraster.a
+lib/libwraster.la
+lib/libwraster.so
+lib/libwraster.so.4
+libdata/pkgconfig/wrlib.pc
diff --git a/x11-wm/windowmaker/Makefile b/x11-wm/windowmaker/Makefile
index 9b0f50f2e808..4eb4ea11ccb8 100644
--- a/x11-wm/windowmaker/Makefile
+++ b/x11-wm/windowmaker/Makefile
@@ -3,24 +3,27 @@
# Whom: Brian Handy <handy@physics.montana.edu>
#
# $FreeBSD$
-#
-PORTNAME= windowmaker
-PORTVERSION= 0.92.0
-PORTREVISION= 10
+PORTNAME?= windowmaker
+PORTVERSION= 0.95.2
+PORTREVISION?= 0
CATEGORIES= x11-wm windowmaker
-MASTER_SITES= ${MASTER_SITE_WINDOWMAKER} \
+MASTER_SITES= http://windowmaker.org/pub/%SUBDIR%/ \
http://dougbarton.us/Downloads/
MASTER_SITE_SUBDIR= source/release
DISTNAME= WindowMaker-${PORTVERSION}
MAINTAINER= dougb@FreeBSD.org
-COMMENT= GNUstep-compliant NeXTstep window manager clone
+COMMENT?= GNUstep-compliant NeXTstep window manager clone
LIB_DEPENDS= gif.5:${PORTSDIR}/graphics/giflib \
png.6:${PORTSDIR}/graphics/png \
tiff.4:${PORTSDIR}/graphics/tiff
+
+.if !defined(LWR_SLAVE)
RUN_DEPENDS= ${LOCALBASE}/share/WindowMaker/Themes/LeetWM.themed/style:${PORTSDIR}/graphics/wmicons
+USE_PERL5= yes
+.endif
MAKE_JOBS_SAFE= yes
@@ -28,7 +31,6 @@ USE_AUTOTOOLS= libtool
USE_BZIP2= yes
USE_GNOME= gnomehack pkgconfig
USE_XORG= xpm xft
-USE_PERL5= yes
USE_GETTEXT= yes
GNU_CONFIGURE= yes
CPPFLAGS+= -I${LOCALBASE}/include
@@ -38,65 +40,33 @@ CONFIGURE_ARGS= --with-pixmapdir=${PREFIX}/include/X11/pixmaps \
--with-libs-from="-L${LOCALBASE}/lib" \
--with-incs-from="-I${LOCALBASE}/include" \
--with-gnustepdir="${PREFIX}/GNUstep" \
+ --enable-modelock --enable-xrandr \
+ --enable-xinerama --enable-usermenu \
--disable-debug
USE_LDCONFIG= yes
+.if !defined(LWR_SLAVE)
CONFLICTS= libwraster-0.*
-MANLANG= "" sk
+MANLANG= "" cs ru sk
MAN1= geticonset.1x getstyle.1x seticons.1x setstyle.1x wdwrite.1x \
wmaker.1x wmsetbg.1x wxcopy.1x wxpaste.1x
-PORTDOCS= AUTHORS BUGFORM BUGS ChangeLog FAQ INSTALL NEWS README \
- README.definable-cursor TODO
+PORTDOCS= AUTHORS BUGFORM BUGS ChangeLog FAQ FAQ.I18N INSTALL \
+ INSTALL-WMAKER NEWS README README.definable-cursor TODO
-OPTIONS= WM_SINGLE_CLICK "Add single-click option to WPrefs menu" on \
- XINERAMA "Enable xinerama support" off \
- XKB_STATUS "XKB keyboard language status support" off \
- WM_LINGUAS "Enable support for additional locales" off \
- DOCKHOTKEYS "Enable support for hotkeys on docks" off
-
-.include <bsd.port.pre.mk>
-
-.if ${ARCH} == amd64
-CONFIGURE_ENV+= ac_cv_c_inline_asm=no
-.endif
-
-.if defined(WITH_XINERAMA) || defined(PACKAGE_BUILDING)
-CONFIGURE_ARGS+= --enable-xinerama
-.endif
-
-.if defined(WITH_XKB_STATUS) || defined(PACKAGE_BUILDING)
-CONFIGURE_ARGS+= --enable-modelock
-.endif
-
-.if !defined(WITHOUT_WM_SINGLE_CLICK) || defined(PACKAGE_BUILDING)
-EXTRA_PATCHES+= ${WRKSRC}/contrib/single_click.diff
-.endif
-
-.if defined(WITH_WM_LINGUAS) || defined(PACKAGE_BUILDING)
-LINGUAS!= ${CAT} ${FILESDIR}/LINGUAS
+LINGUAS= be bg bs ca cs da de el es et fi fr gl hr hu hy it ja ko ms nl no pl pt ro ru sk sv tr zh_CN zh_TW
CONFIGURE_ENV+= LINGUAS="${LINGUAS}"
-PLIST_SUB= WM_LINGUAS=""
-.else
-PLIST_SUB= WM_LINGUAS="@comment "
-.endif
-
-.if defined(WITH_DOCKHOTKEYS)
-EXTRA_PATCHES+= ${FILESDIR}/extra_dockhotkeys.patch
-.endif
-post-patch:
- @${REINPLACE_CMD} -e "s|%%PREFIX%%|${PREFIX}|g" ${WRKSRC}/WPrefs.app/Paths.c
- @${REINPLACE_CMD} -e "s|%%PERL%%|${PERL}|g" ${WRKSRC}/util/wm-oldmenu2new
- @${REINPLACE_CMD} -e "s|Trebuchet MS,Luxi Sans|sans|g" ${WRKSRC}/WindowMaker/Defaults/WMGLOBAL
- @${REINPLACE_CMD} -e "s|/usr/local/GNUstep|${PREFIX}/GNUstep|g" \
- ${WRKSRC}/WindowMaker/*menu*
- @(for file in `grep -rl windowmaker\.org ${WRKSRC}`; do \
- ${REINPLACE_CMD} -e "s|windowmaker\.org|windowmaker\.info|g" $$file; \
- done)
+pre-patch:
+.for f in WINGs/wapplication.c WPrefs.app/Menu.c WPrefs.app/Paths.c \
+ WindowMaker/*menu*
+ ${REINPLACE_CMD} -e "s#/usr/local#${PREFIX}#g" ${WRKSRC}/${f}
+.endfor
+ ${REINPLACE_CMD} -e "s#/usr/include/X11#${PREFIX}/share#" ${WRKSRC}/WPrefs.app/Paths.c
post-install:
+ @${MKDIR} ${PREFIX}/GNUstep/Applications/WPrefs.app/xpm
@${MKDIR} ${PREFIX}/share/WindowMaker/Sounds
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR}
@@ -106,5 +76,6 @@ post-install:
update-LINGUAS: extract
cd ${WRKSRC}/po && \
${ECHO_CMD} *.po | ${SED} 's|\.po||g' > ${FILESDIR}/LINGUAS
+.endif
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
diff --git a/x11-wm/windowmaker/distinfo b/x11-wm/windowmaker/distinfo
index 8becdd5a41a2..c7b33e169a8e 100644
--- a/x11-wm/windowmaker/distinfo
+++ b/x11-wm/windowmaker/distinfo
@@ -1,2 +1,2 @@
-SHA256 (WindowMaker-0.92.0.tar.bz2) = b431ce9f47c5d4cd52ab5b8298cff56fd5700d6e6052b149e19b6c567e526db1
-SIZE (WindowMaker-0.92.0.tar.bz2) = 2202748
+SHA256 (WindowMaker-0.95.2.tar.bz2) = 65b5dee5d87103292fd6afc039a81ed3287e4a545d149a33a50b303a9a9cc94b
+SIZE (WindowMaker-0.95.2.tar.bz2) = 2190825
diff --git a/x11-wm/windowmaker/files/LINGUAS b/x11-wm/windowmaker/files/LINGUAS
deleted file mode 100644
index d56b0eb3b5b4..000000000000
--- a/x11-wm/windowmaker/files/LINGUAS
+++ /dev/null
@@ -1 +0,0 @@
-be bg bs ca cs da de el es et fi fr gl hr hu it ja ko ms nl no pl pt ro ru sk sv tr zh_CN zh_TW
diff --git a/x11-wm/windowmaker/files/extra_dockhotkeys.patch b/x11-wm/windowmaker/files/extra_dockhotkeys.patch
deleted file mode 100644
index 8dab926b8d1c..000000000000
--- a/x11-wm/windowmaker/files/extra_dockhotkeys.patch
+++ /dev/null
@@ -1,446 +0,0 @@
---- src/dock.c.vns 2005-05-18 11:49:00 +0400
-+++ src/dock.c 2005-05-18 12:01:06 +0400
-@@ -96,6 +96,7 @@
- #ifdef XDND /* XXX was OFFIX */
- static WMPropList *dDropCommand=NULL;
- #endif
-+static WMPropList *dKeyboardShortcut=NULL;
- static WMPropList *dAutoLaunch, *dLock;
- static WMPropList *dName, *dForced, *dBuggyApplication, *dYes, *dNo;
- static WMPropList *dHost, *dDock, *dClip;
-@@ -151,6 +152,7 @@
- #ifdef XDND
- dDropCommand = WMRetainPropList(WMCreatePLString("DropCommand"));
- #endif
-+ dKeyboardShortcut = WMRetainPropList(WMCreatePLString("Shortcut"));
- dLock = WMRetainPropList(WMCreatePLString("Lock"));
- dAutoLaunch = WMRetainPropList(WMCreatePLString("AutoLaunch"));
- dName = WMRetainPropList(WMCreatePLString("Name"));
-@@ -1398,6 +1400,12 @@
- WMReleasePropList(command);
- }
-
-+ if (btn->keyboard_shortcut) {
-+ command = WMCreatePLString(btn->keyboard_shortcut);
-+ WMPutInPLDictionary(node, dKeyboardShortcut, command);
-+ WMReleasePropList(command);
-+ }
-+
- if (btn->client_machine && btn->remote_start) {
- host = WMCreatePLString(btn->client_machine);
- WMPutInPLDictionary(node, dHost, host);
-@@ -1613,6 +1621,12 @@
- aicon->dnd_command = wstrdup(WMGetFromPLString(cmd));
- #endif
-
-+ cmd = WMGetFromPLDictionary(info, dKeyboardShortcut);
-+ if (cmd) {
-+ if(addDockShortcut(WMGetFromPLString(cmd), aicon))
-+ aicon->keyboard_shortcut = wstrdup(WMGetFromPLString(cmd));
-+ }
-+
- cmd = WMGetFromPLDictionary(info, dPasteCommand);
- if (cmd)
- aicon->paste_command = wstrdup(WMGetFromPLString(cmd));
-@@ -1918,6 +1932,8 @@
- if (type == WM_DOCK)
- dock->icon_count = 0;
-
-+ dock->screen_ptr->flags.dock_changed_shortcuts = 0;
-+
- for (i=0; i<count; i++) {
- if (dock->icon_count >= dock->max_icons) {
- wwarning(_("there are too many icons stored in dock. Ignoring what doesn't fit"));
-@@ -1950,6 +1966,11 @@
- } else if (dock->icon_count==0 && type==WM_DOCK)
- dock->icon_count++;
- }
-+ if(dock->screen_ptr->flags.dock_changed_shortcuts)
-+ {
-+ rebindKeygrabs(dock->screen_ptr);
-+ dock->screen_ptr->flags.dock_changed_shortcuts = 0;
-+ }
-
- /* if the first icon is not defined, use the default */
- if (dock->icon_array[0]==NULL) {
-@@ -4479,3 +4500,125 @@
- return status;
- }
-
-+Bool
-+addDockShortcut(char *shortcutDefinition, WAppIcon *icon)
-+{
-+ int modifier = 0;
-+ KeyCode keycode;
-+ KeySym ksym;
-+ char *k;
-+ char buf[128], *b;
-+
-+ strcpy(buf, shortcutDefinition);
-+ b = (char*)buf;
-+
-+ /* get modifiers */
-+ while((k = strchr(b, '+'))!=NULL) {
-+ int mod;
-+
-+ *k = 0;
-+ mod = wXModifierFromKey(b);
-+ if(mod < 0) {
-+ wwarning(_("invalid key modifier \"%s\""), b);
-+ return False;
-+ }
-+ modifier |= mod;
-+
-+ b = k+1;
-+ }
-+
-+ /* get key */
-+ ksym = XStringToKeysym(b);
-+
-+ if (ksym==NoSymbol) {
-+ wwarning(_("invalid kbd shortcut specification \"%s\""), shortcutDefinition);
-+ return False;
-+ }
-+
-+ keycode = XKeysymToKeycode(dpy, ksym);
-+ if (keycode==0) {
-+ wwarning(_("invalid key in shortcut \"%s\""), shortcutDefinition);
-+ return False;
-+ }
-+ icon->modifier = modifier;
-+ icon->keycode = keycode;
-+ if(icon->dock && icon->dock->screen_ptr)
-+ icon->dock->screen_ptr->flags.dock_changed_shortcuts = 1;
-+ return True;
-+}
-+
-+static Bool
-+wDockPerformShortcut(WDock *dock, XEvent *event)
-+{
-+ int i;
-+ int modifiers;
-+ int done = 0;
-+
-+ if(!dock) return done;
-+ modifiers = event->xkey.state & ValidModMask;
-+ for(i=(dock->type==WM_DOCK ? 0 : 1); i<dock->max_icons; i++) {
-+ WAppIcon *btn = dock->icon_array[i];
-+
-+ if(!btn || btn->attracted)
-+ continue;
-+
-+ if(btn->keycode==event->xkey.keycode && (btn->modifier==modifiers)) {
-+ launchDockedApplication(btn, False);
-+ done = True;
-+ break;
-+ }
-+
-+ }
-+ return done;
-+}
-+
-+Bool
-+wDockAndClipPerformShortcut(WScreen *scr, XEvent *event)
-+{
-+ int done = 0;
-+ int i;
-+ if(!(done = wDockPerformShortcut(scr->dock, event))) {
-+ for(i=0; i < scr->workspace_count; i++) {
-+ if(done = wDockPerformShortcut(scr->workspaces[i]->clip, event)) break;
-+ }
-+ }
-+ return done;
-+}
-+
-+static void
-+wDockBindShortcuts(Window window, WDock* dock)
-+{
-+ int i;
-+ if(!dock) return;
-+ for(i=(dock->type==WM_DOCK ? 0 : 1); i<dock->max_icons; i++) {
-+ WAppIcon *btn = dock->icon_array[i];
-+
-+ if(!btn || btn->attracted)
-+ continue;
-+
-+ if(btn->keyboard_shortcut)
-+ {
-+ if(btn->keyboard_shortcut && btn->modifier!=AnyModifier) {
-+ XGrabKey(dpy, btn->keycode, btn->modifier|LockMask,
-+ window, True, GrabModeAsync, GrabModeAsync);
-+#ifdef NUMLOCK_HACK
-+ wHackedGrabKey(btn->keycode, btn->modifier,
-+ window, True, GrabModeAsync, GrabModeAsync);
-+#endif
-+ }
-+ XGrabKey(dpy, btn->keycode, btn->modifier, window, True,
-+ GrabModeAsync, GrabModeAsync);
-+ }
-+ }
-+}
-+
-+void
-+wDockAndClipBindShortcuts(Window window, WScreen *scr)
-+{
-+ int i;
-+ wDockBindShortcuts(window, scr->dock);
-+ for(i=0; i < scr->workspace_count; i++ ) {
-+ wDockBindShortcuts(window, scr->workspaces[i]->clip);
-+ }
-+}
-+
---- src/appicon.c.vns 2005-05-18 11:49:00 +0400
-+++ src/appicon.c 2005-05-18 11:49:00 +0400
-@@ -197,6 +197,8 @@
- if (aicon->dnd_command)
- wfree(aicon->dnd_command);
- #endif
-+ if (aicon->keyboard_shortcut)
-+ wfree(aicon->keyboard_shortcut);
- if (aicon->wm_instance)
- wfree(aicon->wm_instance);
- if (aicon->wm_class)
---- src/appicon.h.vns 2004-10-14 21:31:49 +0400
-+++ src/appicon.h 2005-05-18 11:50:01 +0400
-@@ -52,6 +52,10 @@
-
- char *paste_command; /* command to run when something is pasted */
-
-+ char *keyboard_shortcut; /* keyboard shortcut to launch app */
-+ int modifier;
-+ KeyCode keycode;
-+
- char *wm_class;
- char *wm_instance;
- pid_t pid; /* for apps launched from the dock */
---- src/dockedapp.c.vns 2004-10-14 21:31:49 +0400
-+++ src/dockedapp.c 2005-05-18 11:56:22 +0400
-@@ -25,6 +25,7 @@
-
- #include <X11/Xlib.h>
- #include <X11/Xutil.h>
-+#include <X11/keysym.h>
- #include <stdlib.h>
- #include <string.h>
-
-@@ -66,6 +67,10 @@
- WMTextField *pasteCommandField;
- WMLabel *pasteCommandLabel;
-
-+ WMFrame *keyboardShortcutFrame;
-+ WMTextField *keyboardShortcutField;
-+ WMButton *keyboardShortcutCaptureBtn;
-+
- WMFrame *iconFrame;
- WMTextField *iconField;
- WMButton *browseBtn;
-@@ -81,6 +86,7 @@
- /* kluge */
- unsigned int destroyed:1;
- unsigned int choosingIcon:1;
-+ unsigned int capturing:1;
- } AppSettingsPanel;
-
-
-@@ -117,6 +123,43 @@
- icon->paste_command = command;
- }
-
-+static char*
-+trimstr(char *str)
-+{
-+ char *p = str;
-+ int i;
-+
-+ while (isspace(*p)) p++;
-+ p = wstrdup(p);
-+ i = strlen(p);
-+ while (isspace(p[i]) && i>0) {
-+ p[i]=0;
-+ i--;
-+ }
-+
-+ return p;
-+}
-+
-+static void
-+updateKeyboardShortcut(WAppIcon *icon, char *shortcut)
-+{
-+ char *str = NULL;
-+ if(icon->keyboard_shortcut)
-+ wfree(icon->keyboard_shortcut);
-+ if(shortcut) {
-+ str = trimstr(shortcut);
-+ if(!strlen(str)) {
-+ wfree(str);
-+ str = NULL;
-+ }
-+ }
-+ icon->keyboard_shortcut = str;
-+ icon->modifier = 0;
-+ icon->keycode = 0;
-+ if(str) addDockShortcut(str, icon);
-+ rebindKeygrabs(icon->dock->screen_ptr);
-+}
-+
-
-
- #ifdef XDND
-@@ -267,6 +310,8 @@
- text = WMGetTextFieldText(panel->pasteCommandField);
- updatePasteCommand(panel->editedIcon, text);
-
-+ text = WMGetTextFieldText(panel->keyboardShortcutField);
-+ updateKeyboardShortcut(panel->editedIcon, text);
-
- panel->editedIcon->auto_launch =
- WMGetButtonSelected(panel->autoLaunchBtn);
-@@ -279,9 +324,83 @@
- DestroyDockAppSettingsPanel(panel);
- }
-
-+static char*
-+captureShortcut(Display *dpy, AppSettingsPanel *panel)
-+{
-+ XEvent ev;
-+ KeySym ksym, lksym, uksym;
-+ char buffer[64];
-+ char *key = NULL;
-+
-+ while (panel->capturing) {
-+ XAllowEvents(dpy, AsyncKeyboard, CurrentTime);
-+ WMNextEvent(dpy, &ev);
-+ if (ev.type==KeyPress && ev.xkey.keycode!=0) {
-+ ksym = XKeycodeToKeysym(dpy, ev.xkey.keycode, 0);
-+ if (!IsModifierKey(ksym)) {
-+ XConvertCase(ksym, &lksym, &uksym);
-+ key=XKeysymToString(uksym);
-+ panel->capturing = 0;
-+ break;
-+ }
-+ }
-+ WMHandleEvent(&ev);
-+ }
-+ if (!key)
-+ return NULL;
-+
-+ buffer[0] = 0;
-+ if (ev.xkey.state & ControlMask) {
-+ strcat(buffer, "Control+");
-+ }
-+ if (ev.xkey.state & ShiftMask) {
-+ strcat(buffer, "Shift+");
-+ }
-+ if (ev.xkey.state & Mod1Mask) {
-+ strcat(buffer, "Mod1+");
-+ }
-+ if (ev.xkey.state & Mod2Mask) {
-+ strcat(buffer, "Mod2+");
-+ }
-+ if (ev.xkey.state & Mod3Mask) {
-+ strcat(buffer, "Mod3+");
-+ }
-+ if (ev.xkey.state & Mod4Mask) {
-+ strcat(buffer, "Mod4+");
-+ }
-+ if (ev.xkey.state & Mod5Mask) {
-+ strcat(buffer, "Mod5+");
-+ }
-+ strcat(buffer, key);
-+
-+ return wstrdup(buffer);
-+}
-+
-+static void
-+captureClick(WMWidget *w, void *data)
-+{
-+ AppSettingsPanel *panel = (AppSettingsPanel*)data;
-+ char *shortcut;
-+
-+ if(!panel->capturing) {
-+ panel->capturing = 1;
-+ WMSetButtonText(w, _("Cancel"));
-+ XGrabKeyboard(dpy, WMWidgetXID(panel->win), True, GrabModeAsync,
-+ GrabModeAsync, CurrentTime);
-+ shortcut = captureShortcut(dpy, panel);
-+ if (shortcut) {
-+ WMSetTextFieldText(panel->keyboardShortcutField, shortcut);
-+ wfree(shortcut);
-+ }
-+ }
-+ panel->capturing = 0;
-+ WMSetButtonText(w, _("Capture"));
-+ XUngrabKeyboard(dpy, CurrentTime);
-+}
-+
-
- #define PWIDTH 295
--#define PHEIGHT 430
-+#define PHEIGHT 490
-
-
- void
-@@ -396,6 +515,21 @@
- #endif
- WMMapSubwidgets(panel->dndCommandFrame);
-
-+ panel->keyboardShortcutFrame = WMCreateFrame(vbox);
-+ WMSetFrameTitle(panel->keyboardShortcutFrame, _("Keyboard shortcut"));
-+ WMAddBoxSubview(vbox, WMWidgetView(panel->keyboardShortcutFrame), False, True,
-+ 50, 50, 10);
-+ panel->keyboardShortcutField = WMCreateTextField(panel->keyboardShortcutFrame);
-+ WMResizeWidget(panel->keyboardShortcutField, 176, 20);
-+ WMMoveWidget(panel->keyboardShortcutField, 10, 20);
-+ WMSetTextFieldText(panel->keyboardShortcutField, aicon->keyboard_shortcut);
-+ panel->keyboardShortcutCaptureBtn = WMCreateCommandButton(panel->keyboardShortcutFrame);
-+ WMSetButtonText(panel->keyboardShortcutCaptureBtn, _("Capture"));
-+ WMResizeWidget(panel->keyboardShortcutCaptureBtn, 70, 24);
-+ WMMoveWidget(panel->keyboardShortcutCaptureBtn, 195, 18);
-+ WMSetButtonAction(panel->keyboardShortcutCaptureBtn, captureClick, panel);
-+ WMMapSubwidgets(panel->keyboardShortcutFrame);
-+
- panel->iconFrame = WMCreateFrame(vbox);
- WMSetFrameTitle(panel->iconFrame, _("Icon Image"));
- WMAddBoxSubview(vbox, WMWidgetView(panel->iconFrame), False, True,
---- src/event.c.vns 2004-10-24 23:19:50 +0400
-+++ src/event.c 2005-05-18 11:57:21 +0400
-@@ -1364,7 +1364,7 @@
- }
- #endif
- #else
-- if (!wRootMenuPerformShortcut(event)) {
-+ if (!wRootMenuPerformShortcut(event) && !wDockAndClipPerformShortcut(scr, event)) {
- #endif
- static int dontLoop = 0;
-
---- src/rootmenu.c.vns 2005-05-18 11:49:00 +0400
-+++ src/rootmenu.c 2005-05-18 11:49:00 +0400
-@@ -466,7 +466,7 @@
- }
-
-
--static void
-+void
- rebindKeygrabs(WScreen *scr)
- {
- WWindow *wwin;
---- src/screen.h.vns 2004-10-23 03:58:59 +0400
-+++ src/screen.h 2005-05-18 11:58:11 +0400
-@@ -307,6 +307,7 @@
- unsigned int regenerate_icon_textures:1;
- unsigned int dnd_data_convertion_status:1;
- unsigned int root_menu_changed_shortcuts:1;
-+ unsigned int dock_changed_shortcuts:1;
- unsigned int added_workspace_menu:1;
- unsigned int added_windows_menu:1;
- unsigned int startup2:1; /* startup phase 2 */
---- src/window.c.vns 2005-05-18 11:49:00 +0400
-+++ src/window.c 2005-05-18 11:49:00 +0400
-@@ -2820,6 +2820,7 @@
-
- #ifndef LITE
- wRootMenuBindShortcuts(wwin->frame->core->window);
-+ wDockAndClipBindShortcuts(wwin->frame->core->window, wwin->screen_ptr);
- #endif
- }
-
diff --git a/x11-wm/windowmaker/files/patch-WINGs_wview.c b/x11-wm/windowmaker/files/patch-WINGs_wview.c
deleted file mode 100644
index d72267f3d55b..000000000000
--- a/x11-wm/windowmaker/files/patch-WINGs_wview.c
+++ /dev/null
@@ -1,23 +0,0 @@
-diff -urbB ../WindowMaker-0.92.0/WINGs/wview.c ./WINGs/wview.c
---- ../WindowMaker-0.92.0/WINGs/wview.c 2004-10-27 19:41:04.000000000 -0700
-+++ ./WINGs/wview.c 2008-12-14 19:59:05.000000000 -0800
-@@ -450,6 +450,9 @@
-
- W_FreeViewXdndPart(view);
-
-+ if (view->backColor)
-+ WMReleaseColor(view->backColor);
-+
- wfree(view);
- }
-
-@@ -715,7 +718,8 @@
- {
- WMScreen *scr = W_VIEW_SCREEN(view);
- Window foo;
-- int x, y, topX, topY, bar;
-+ int x, y, topX, topY;
-+ unsigned int bar;
- WMView *topView;
-
- topView = view;
diff --git a/x11-wm/windowmaker/files/patch-WINGs_wwindow.c b/x11-wm/windowmaker/files/patch-WINGs_wwindow.c
deleted file mode 100644
index acd6bec412b8..000000000000
--- a/x11-wm/windowmaker/files/patch-WINGs_wwindow.c
+++ /dev/null
@@ -1,19 +0,0 @@
---- WINGs/wwindow.c
-+++ WINGs/wwindow.c
-@@ -254,14 +254,14 @@
- setMiniwindow(WMWindow *win, RImage *image)
- {
- WMScreen *scr= win->view->screen;
-- CARD32 *data;
-+ long *data;
- int x, y;
- int o;
-
- if (!image)
- return;
-
-- data = wmalloc((image->width * image->height + 2) * sizeof(CARD32));
-+ data = wmalloc((image->width * image->height + 2) * sizeof(long));
-
- o= 0;
- data[o++] = image->width;
diff --git a/x11-wm/windowmaker/files/patch-ag b/x11-wm/windowmaker/files/patch-ag
deleted file mode 100644
index 4449c252a818..000000000000
--- a/x11-wm/windowmaker/files/patch-ag
+++ /dev/null
@@ -1,26 +0,0 @@
---- WPrefs.app/Paths.c.orig Tue Oct 12 13:18:33 2004
-+++ WPrefs.app/Paths.c Sun Oct 24 01:46:01 2004
-@@ -85,10 +85,10 @@
- wwarning(_("bad value in option IconPath. Using default path list"));
- addPathToList(panel->icoL, -1, "~/pixmaps");
- addPathToList(panel->icoL, -1, "~/GNUstep/Library/Icons");
-- addPathToList(panel->icoL, -1, "/usr/include/X11/pixmaps");
-- addPathToList(panel->icoL, -1, "/usr/local/share/WindowMaker/Icons");
-- addPathToList(panel->icoL, -1, "/usr/local/share/WindowMaker/Pixmaps");
-- addPathToList(panel->icoL, -1, "/usr/share/WindowMaker/Icons");
-+ addPathToList(panel->icoL, -1, "%%PREFIX%%/include/X11/pixmaps");
-+ addPathToList(panel->icoL, -1, "%%PREFIX%%/share/WindowMaker/Icons");
-+ addPathToList(panel->icoL, -1, "%%PREFIX%%/share/WindowMaker/Pixmaps");
-+ addPathToList(panel->icoL, -1, "%%PREFIX%%/share/WindowMaker/Icons");
- } else {
- for (i=0; i<WMGetPropListItemCount(array); i++) {
- val = WMGetFromPLArray(array, i);
-@@ -102,7 +102,7 @@
- wwarning(_("bad value in option PixmapPath. Using default path list"));
- addPathToList(panel->pixL, -1, "~/pixmaps");
- addPathToList(panel->pixL, -1, "~/GNUstep/Library/WindowMaker/Pixmaps");
-- addPathToList(panel->pixL, -1, "/usr/local/share/WindowMaker/Pixmaps");
-+ addPathToList(panel->pixL, -1, "%%PREFIX%%/share/WindowMaker/Pixmaps");
- } else {
- for (i=0; i<WMGetPropListItemCount(array); i++) {
- val = WMGetFromPLArray(array, i);
diff --git a/x11-wm/windowmaker/files/patch-am b/x11-wm/windowmaker/files/patch-am
index 47a7586b7e2f..6bc9103af740 100644
--- a/x11-wm/windowmaker/files/patch-am
+++ b/x11-wm/windowmaker/files/patch-am
@@ -1,14 +1,5 @@
--- util/wm-oldmenu2new.orig Wed Jan 20 21:39:18 1999
+++ util/wm-oldmenu2new Wed Jan 20 21:39:29 1999
-@@ -112,7 +112,7 @@
- # This is the interesting bit. Edit the old style menu and
- # convert into new style property-list menu.
- #
--perl - $T <<-'EOF' > $T-p
-+%%PERL%% - $T <<-'EOF' > $T-p
- $v=chr(22);
- for (<>) {
- push @foo,$_;
@@ -127,6 +127,7 @@
for (@foo2) {
s/^(\s*)"([^"]*)"\s\s*END/\1),/;
diff --git a/x11-wm/windowmaker/files/patch-src_actions.c b/x11-wm/windowmaker/files/patch-src_actions.c
deleted file mode 100644
index e3d03c234792..000000000000
--- a/x11-wm/windowmaker/files/patch-src_actions.c
+++ /dev/null
@@ -1,35 +0,0 @@
---- src/actions.c.orig
-+++ src/actions.c
-@@ -78,6 +78,16 @@
- #define SHADE_STEPS shadePars[(int)wPreferences.shade_speed].steps
- #define SHADE_DELAY shadePars[(int)wPreferences.shade_speed].delay
-
-+static int
-+compareTimes(Time t1, Time t2)
-+{
-+ Time diff;
-+
-+ if (t1 == t2)
-+ return 0;
-+ diff = t1 - t2;
-+ return (diff < 60000) ? 1 : -1;
-+}
-
- /*
- *----------------------------------------------------------------------
-@@ -99,11 +109,11 @@
-
- WWindow *old_focused;
- WWindow *focused=scr->focused_window;
-- int timestamp=LastTimestamp;
-+ Time timestamp=LastTimestamp;
- WApplication *oapp=NULL, *napp=NULL;
- int wasfocused;
-
-- if (scr->flags.ignore_focus_events || LastFocusChange > timestamp)
-+ if (scr->flags.ignore_focus_events || compareTimes(LastFocusChange, timestamp) > 0)
- return;
-
- if (!old_scr)
-
-
diff --git a/x11-wm/windowmaker/files/patch-src_dock.c b/x11-wm/windowmaker/files/patch-src_dock.c
deleted file mode 100644
index 3a16f1a1a5da..000000000000
--- a/x11-wm/windowmaker/files/patch-src_dock.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/dock.c.orig 2011-05-04 09:33:23.000000000 +0200
-+++ src/dock.c 2011-05-04 09:33:47.000000000 +0200
-@@ -3801,7 +3801,7 @@
-
-
- if (wPreferences.flags.noupdates)
-- return;
-+ return False;
-
- if (XGrabPointer(dpy, icon->core->window, True, ButtonMotionMask
- |ButtonReleaseMask|ButtonPressMask, GrabModeAsync,
diff --git a/x11-wm/windowmaker/files/patch-src_event.c b/x11-wm/windowmaker/files/patch-src_event.c
deleted file mode 100644
index aa0d7e6ed1f0..000000000000
--- a/x11-wm/windowmaker/files/patch-src_event.c
+++ /dev/null
@@ -1,13 +0,0 @@
---- src/event.c
-+++ src/event.c
-@@ -559,6 +559,10 @@
- wwin->flags.skip_next_animation = 1;
- wIconifyWindow(wwin);
- }
-+ if (wwin->flags.fullscreen) {
-+ wwin->flags.fullscreen = 0;
-+ wFullscreenWindow(wwin);
-+ }
- if (wwin->flags.hidden) {
- WApplication *wapp = wApplicationOf(wwin->main_window);
-
diff --git a/x11-wm/windowmaker/files/patch-src_switchpanel.c b/x11-wm/windowmaker/files/patch-src_switchpanel.c
deleted file mode 100644
index 9f3bdeed1ffd..000000000000
--- a/x11-wm/windowmaker/files/patch-src_switchpanel.c
+++ /dev/null
@@ -1,42 +0,0 @@
-diff -urbB ../WindowMaker-0.92.0/src/switchpanel.c ./src/switchpanel.c
---- ../WindowMaker-0.92.0/src/switchpanel.c 2004-10-30 00:16:04.000000000 -0700
-+++ ./src/switchpanel.c 2008-12-14 19:59:05.000000000 -0800
-@@ -464,7 +464,7 @@
- iconsThatFitCount= count;
-
- if (width > rect.size.width) {
-- iconsThatFitCount = (WMScreenWidth(scr->wmscreen)-SCREEN_BORDER_SPACING)/ICON_TILE_SIZE;
-+ iconsThatFitCount = (rect.size.width-SCREEN_BORDER_SPACING)/ICON_TILE_SIZE;
- width= iconsThatFitCount*ICON_TILE_SIZE;
- }
-
-@@ -501,6 +501,7 @@
-
- if (!panel->bg) {
- WMFrame *frame = WMCreateFrame(panel->win);
-+ WMColor *darkGray = WMDarkGrayColor(scr->wmscreen);
- WMSetFrameRelief(frame, WRSimple);
- WMSetViewExpandsToParent(WMWidgetView(frame), 0, 0, 0, 0);
-
-@@ -508,10 +509,11 @@
- WMResizeWidget(panel->label, width, LABEL_HEIGHT);
- WMMoveWidget(panel->label, BORDER_SPACE, BORDER_SPACE+ICON_TILE_SIZE+5);
- WMSetLabelRelief(panel->label, WRSimple);
-- WMSetWidgetBackgroundColor(panel->label, WMDarkGrayColor(scr->wmscreen));
-+ WMSetWidgetBackgroundColor(panel->label, darkGray);
- WMSetLabelFont(panel->label, panel->font);
- WMSetLabelTextColor(panel->label, panel->white);
-
-+ WMReleaseColor(darkGray);
- height+= 5;
- }
-
-@@ -604,6 +606,8 @@
- RReleaseImage(panel->bg);
- if (panel->font)
- WMReleaseFont(panel->font);
-+ if (panel->white)
-+ WMReleaseColor(panel->white);
- wfree(panel);
- }
-
diff --git a/x11-wm/windowmaker/files/patch-src_wmspec.c b/x11-wm/windowmaker/files/patch-src_wmspec.c
deleted file mode 100644
index 3b8b2fd3f6e5..000000000000
--- a/x11-wm/windowmaker/files/patch-src_wmspec.c
+++ /dev/null
@@ -1,118 +0,0 @@
---- src/wmspec.c.sav 2005-05-15 09:41:09.000000000 -0700
-+++ src/wmspec.c 2008-12-31 01:47:07.000000000 -0800
-@@ -322,15 +322,15 @@
- void
- wNETWMUpdateDesktop(WScreen *scr)
- {
-- CARD32 *views, sizes[2];
-+ long *views, sizes[2];
- int count, i;
-
- if (scr->workspace_count==0)
- return;
-
- count = scr->workspace_count * 2;
-- views = wmalloc(sizeof(CARD32) * count);
-- /*memset(views, 0, sizeof(CARD32) * count);*/
-+ views = wmalloc(sizeof(long) * count);
-+ /*memset(views, 0, sizeof(long) * count);*/
-
- #ifdef VIRTUAL_DESKTOP
- sizes[0] = scr->workspaces[scr->current_workspace]->width;
-@@ -370,7 +370,7 @@
- 0, 1, &count);
- if (prop)
- {
-- int desktop= *(CARD32*)prop;
-+ int desktop= *(long*)prop;
- XFree(prop);
- return desktop;
- }
-@@ -389,12 +389,12 @@
- *
- * The logic can also be changed to accept bigger images and scale them down.
- */
--static CARD32*
--findBestIcon(CARD32 *data, unsigned long items)
-+static unsigned long*
-+findBestIcon(unsigned long *data, unsigned long items)
- {
- int size, wanted, d, distance;
- unsigned long i;
-- CARD32 *icon;
-+ unsigned long *icon;
-
- /* better use only 75% of icon_size. For 64x64 this means 48x48
- * This leaves room around the icon for the miniwindow title and
-@@ -418,7 +418,7 @@
-
-
- static RImage*
--makeRImageFromARGBData(CARD32 *data)
-+makeRImageFromARGBData(unsigned long *data)
- {
- int size, width, height, i;
- RImage *image;
-@@ -449,7 +449,7 @@
- static void
- updateIconImage(WScreen *scr, WWindow *wwin)
- {
-- CARD32 *property, *data;
-+ unsigned long *property, *data;
- unsigned long items, rest;
- Atom type;
- int format;
-@@ -487,7 +487,7 @@
- static void
- updateShowDesktop(WScreen * scr, Bool show)
- {
-- CARD32 foo;
-+ long foo;
-
- foo = (show == True);
- XChangeProperty(dpy, scr->root_win, net_showing_desktop, XA_CARDINAL, 32,
-@@ -660,7 +660,7 @@
- void
- wNETWMUpdateWorkarea(WScreen *scr, WArea usableArea)
- {
-- CARD32 *area;
-+ long *area;
- int count, i;
-
- /* XXX: not Xinerama compatible,
-@@ -670,7 +670,7 @@
- return;
-
- count = scr->workspace_count * 4;
-- area = wmalloc(sizeof(CARD32) * count);
-+ area = wmalloc(sizeof(long) * count);
- for (i=0; i<scr->workspace_count; i++) {
- area[4*i + 0] = usableArea.x1;
- area[4*i + 1] = usableArea.y1;
-@@ -793,7 +793,7 @@
- static void
- updateWorkspaceCount(WScreen *scr) /* changeable */
- {
-- CARD32 count;
-+ long count;
-
- count = scr->workspace_count;
-
-@@ -805,7 +805,7 @@
- static void
- updateCurrentWorkspace(WScreen *scr) /* changeable */
- {
-- CARD32 count;
-+ long count;
-
- count = scr->current_workspace;
-
-@@ -852,7 +852,7 @@
- static void
- updateWorkspaceHint(WWindow *wwin, Bool fake, Bool del)
- {
-- CARD32 l;
-+ long l;
-
- if (del) {
- XDeleteProperty(dpy, wwin->client_win, net_wm_desktop);
diff --git a/x11-wm/windowmaker/files/patch-wrlib_load.c b/x11-wm/windowmaker/files/patch-wrlib_load.c
deleted file mode 100644
index 5cf6c2f85d0d..000000000000
--- a/x11-wm/windowmaker/files/patch-wrlib_load.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- wrlib/load.c.orig 2004-10-12 20:21:31.000000000 +0200
-+++ wrlib/load.c 2010-03-29 07:34:45.000000000 +0200
-@@ -348,7 +348,7 @@
-
- #ifdef USE_PNG
- /* check for PNG */
-- if (png_check_sig(buffer, 8))
-+ if (!png_sig_cmp(buffer, 0, 8))
- return IM_PNG;
- #endif
-
diff --git a/x11-wm/windowmaker/files/patch-wrlib_x86_specific.c b/x11-wm/windowmaker/files/patch-wrlib_x86_specific.c
deleted file mode 100644
index 3b521b7c3a58..000000000000
--- a/x11-wm/windowmaker/files/patch-wrlib_x86_specific.c
+++ /dev/null
@@ -1,130 +0,0 @@
---- wrlib/x86_specific.c 2004-10-31 02:44:01.000000000 +0100
-+++ wrlib/x86_specific.c 2005-08-22 21:07:57.000000000 +0200
-@@ -98,15 +98,23 @@
- int height,
- int line_offset)
- {
-- long long rrggbbaa;
-- long long pixel;
-+ union {
-+ long long rrggbbaa;
-+ struct {short int rr, gg, bb, aa;} words;
-+ } rrggbbaa;
-+
-+ union {
-+ long long pixel;
-+ struct {short int rr, gg, bb, aa;} words;
-+ } pixel;
-+
- short *tmp_err;
- short *tmp_nerr;
- int x;
-
- asm volatile
- (
-- "pushal \n\t"
-+ "pushl %%ebx \n\t"
-
- // pack dr, dg and db into mm6
- "movl %7, %%eax \n\t"
-@@ -290,7 +298,7 @@
-
- ".Enda: \n\t" // THE END
- "emms \n\t"
-- "popal \n\t"
-+ "popl %%ebx \n\t"
- :
- :
- "m" (image), // %0
-@@ -309,17 +317,18 @@
- "m" (width), // %13
- "m" (height), // %14
- "m" (line_offset), // %15
-- "m" (rrggbbaa), // %16 (access to rr)
-- "m" ((*((short*)(&rrggbbaa)+1))), // %17 (access to gg)
-- "m" ((*((short*)(&rrggbbaa)+2))), // %18 (access to bb)
-- "m" ((*((short*)(&rrggbbaa)+3))), // %19 (access to aa)
-- "m" (pixel), // %20 (access to pixel.r)
-- "m" ((*((short*)(&pixel)+1))), // %21 (access to pixel.g)
-- "m" ((*((short*)(&pixel)+2))), // %22 (access to pixel.b)
-- "m" ((*((short*)(&pixel)+3))), // %23 (access to pixel.a)
-+ "m" (rrggbbaa.rrggbbaa), // %16 (access to rr)
-+ "m" (rrggbbaa.words.gg), // %17 (access to gg)
-+ "m" (rrggbbaa.words.bb), // %18 (access to bb)
-+ "m" (rrggbbaa.words.aa), // %19 (access to aa)
-+ "m" (pixel.pixel), // %20 (access to pixel.r)
-+ "m" (pixel.words.gg), // %21 (access to pixel.g)
-+ "m" (pixel.words.bb), // %22 (access to pixel.b)
-+ "m" (pixel.words.aa), // %23 (access to pixel.a)
- "m" (tmp_err), // %24
- "m" (tmp_nerr), // %25
- "m" (x) // %26
-+ : "eax", "ecx", "edx", "esi", "edi"
- );
- }
-
-@@ -342,8 +351,15 @@
- int height,
- int line_offset)
- {
-- long long rrggbbaa;
-- long long pixel;
-+ union {
-+ long long rrggbbaa;
-+ struct {short int rr, gg, bb, aa;} words;
-+ } rrggbbaa;
-+
-+ union {
-+ long long pixel;
-+ struct {short int rr, gg, bb, aa;} words;
-+ } pixel;
-
- short *tmp_err;
- short *tmp_nerr;
-@@ -354,7 +370,7 @@
-
- asm volatile
- (
-- "pushal \n\t"
-+ "pushl %%ebx \n\t"
-
- "movl %13, %%eax \n\t" // eax = width
- "movl %%eax, %%ebx \n\t"
-@@ -424,7 +440,7 @@
-
- ".Endc: \n\t" // THE END
- "emms \n\t"
-- "popal \n\t"
-+ "popl %%ebx \n\t"
- :
- :
- "m" (image), // %0
-@@ -443,19 +459,20 @@
- "m" (width), // %13
- "m" (height), // %14
- "m" (line_offset), // %15
-- "m" (rrggbbaa), // %16 (access to rr)
-- "m" ((*((short*)(&rrggbbaa)+1))), // %17 (access to gg)
-- "m" ((*((short*)(&rrggbbaa)+2))), // %18 (access to bb)
-- "m" ((*((short*)(&rrggbbaa)+3))), // %19 (access to aa)
-- "m" (pixel), // %20 (access to pixel.r)
-- "m" ((*((short*)(&pixel)+1))), // %21 (access to pixel.g)
-- "m" ((*((short*)(&pixel)+2))), // %22 (access to pixel.b)
-- "m" ((*((short*)(&pixel)+3))), // %23 (access to pixel.a)
-+ "m" (rrggbbaa.rrggbbaa), // %16 (access to rr)
-+ "m" (rrggbbaa.words.gg), // %17 (access to gg)
-+ "m" (rrggbbaa.words.bb), // %18 (access to bb)
-+ "m" (rrggbbaa.words.aa), // %19 (access to aa)
-+ "m" (pixel.pixel), // %20 (access to pixel.r)
-+ "m" (pixel.words.gg), // %21 (access to pixel.g)
-+ "m" (pixel.words.bb), // %22 (access to pixel.b)
-+ "m" (pixel.words.aa), // %23 (access to pixel.a)
- "m" (tmp_err), // %24
- "m" (tmp_nerr), // %25
- "m" (x), // %26
- "m" (w1), // %27
- "m" (w2) // %28
-+ : "eax", "ecx", "edx", "esi", "edi"
- );
- }
-
diff --git a/x11-wm/windowmaker/pkg-descr b/x11-wm/windowmaker/pkg-descr
index 74747c8bf043..72ff6f46b4c9 100644
--- a/x11-wm/windowmaker/pkg-descr
+++ b/x11-wm/windowmaker/pkg-descr
@@ -6,4 +6,4 @@ easy to use. In addition, Window Maker works with GNOME and KDE,
making it one of the most useful and universal window managers
available.
-WWW: http://www.windowmaker.info/
+WWW: http://www.windowmaker.org/
diff --git a/x11-wm/windowmaker/pkg-plist b/x11-wm/windowmaker/pkg-plist
index c45549b7d5ea..eb05b4331aa6 100644
--- a/x11-wm/windowmaker/pkg-plist
+++ b/x11-wm/windowmaker/pkg-plist
@@ -1,3 +1,5 @@
+@exec mkdir -p %D/GNUstep/Applications/WPrefs.app/xpm
+@exec mkdir -p %D/share/WindowMaker/Sounds
GNUstep/Applications/WPrefs.app/WPrefs
GNUstep/Applications/WPrefs.app/WPrefs.tiff
GNUstep/Applications/WPrefs.app/WPrefs.xpm
@@ -20,6 +22,7 @@ GNUstep/Applications/WPrefs.app/tiff/menualign1.tiff
GNUstep/Applications/WPrefs.app/tiff/menualign2.tiff
GNUstep/Applications/WPrefs.app/tiff/menuprefs.tiff
GNUstep/Applications/WPrefs.app/tiff/menus.tiff
+GNUstep/Applications/WPrefs.app/tiff/miscprefs2.tiff
GNUstep/Applications/WPrefs.app/tiff/moreanim.tiff
GNUstep/Applications/WPrefs.app/tiff/mousesettings.tiff
GNUstep/Applications/WPrefs.app/tiff/mousespeed.tiff
@@ -27,9 +30,12 @@ GNUstep/Applications/WPrefs.app/tiff/msty1.tiff
GNUstep/Applications/WPrefs.app/tiff/msty2.tiff
GNUstep/Applications/WPrefs.app/tiff/msty3.tiff
GNUstep/Applications/WPrefs.app/tiff/newstyle.tiff
+GNUstep/Applications/WPrefs.app/tiff/nextstyle.tiff
GNUstep/Applications/WPrefs.app/tiff/nonopaque.tiff
+GNUstep/Applications/WPrefs.app/tiff/noopaqueresize.tiff
GNUstep/Applications/WPrefs.app/tiff/oldstyle.tiff
GNUstep/Applications/WPrefs.app/tiff/opaque.tiff
+GNUstep/Applications/WPrefs.app/tiff/opaqueresize.tiff
GNUstep/Applications/WPrefs.app/tiff/paths.tiff
GNUstep/Applications/WPrefs.app/tiff/smooth.tiff
GNUstep/Applications/WPrefs.app/tiff/sound.tiff
@@ -45,6 +51,7 @@ GNUstep/Applications/WPrefs.app/tiff/speed4.tiff
GNUstep/Applications/WPrefs.app/tiff/speed4s.tiff
GNUstep/Applications/WPrefs.app/tiff/tdel.tiff
GNUstep/Applications/WPrefs.app/tiff/tedit.tiff
+GNUstep/Applications/WPrefs.app/tiff/temp.tiff
GNUstep/Applications/WPrefs.app/tiff/textr.tiff
GNUstep/Applications/WPrefs.app/tiff/theme.tiff
GNUstep/Applications/WPrefs.app/tiff/timer0.tiff
@@ -80,8 +87,9 @@ bin/wm-oldmenu2new
bin/wmagnify
bin/wmaker
bin/wmaker.inst
+bin/wmgenmenu
+bin/wmmenugen
bin/wmsetbg
-bin/wmsetup
bin/wxcopy
bin/wxpaste
etc/WindowMaker/WMGLOBAL
@@ -92,21 +100,20 @@ etc/WindowMaker/WindowMaker
include/WINGs/WINGs.h
include/WINGs/WINGsP.h
include/WINGs/WUtil.h
-include/WINGs/proplist-compat.h
-include/WINGs/wtabledelegates.h
-include/WINGs/wtableview.h
-include/WMaker.h
include/wraster.h
-lib/libExtraWINGs.a
lib/libWINGs.a
-lib/libWMaker.a
+lib/libWINGs.la
+lib/libWINGs.so
+lib/libWINGs.so.2
lib/libWUtil.a
+lib/libWUtil.la
+lib/libWUtil.so
+lib/libWUtil.so.2
lib/libwraster.a
lib/libwraster.la
lib/libwraster.so
lib/libwraster.so.4
libdata/pkgconfig/WINGs.pc
-libdata/pkgconfig/wmlib.pc
libdata/pkgconfig/wrlib.pc
share/WINGs/Images.tiff
share/WINGs/Images.xpm
@@ -116,7 +123,7 @@ share/WindowMaker/Backgrounds/BlueImage.jpeg
share/WindowMaker/IconSets/Default.iconset
share/WindowMaker/Icons/BitchX.tiff
share/WindowMaker/Icons/BitchX.xpm
-share/WindowMaker/Icons/DefaultAppIcon.tiff
+share/WindowMaker/Icons/Ear.png
share/WindowMaker/Icons/Ftp.png
share/WindowMaker/Icons/GNUstep.tiff
share/WindowMaker/Icons/GNUstep.xpm
@@ -129,10 +136,13 @@ share/WindowMaker/Icons/GNUterm.xpm
share/WindowMaker/Icons/GreenWilber.png
share/WindowMaker/Icons/ICQ.png
share/WindowMaker/Icons/Jabber.png
+share/WindowMaker/Icons/Magnify.tiff
+share/WindowMaker/Icons/Magnify.xpm
+share/WindowMaker/Icons/Mouth.png
share/WindowMaker/Icons/Mozilla.png
-share/WindowMaker/Icons/Netscape.png
share/WindowMaker/Icons/Pen.png
share/WindowMaker/Icons/Pencil.png
+share/WindowMaker/Icons/README
share/WindowMaker/Icons/Real.png
share/WindowMaker/Icons/Shell.png
share/WindowMaker/Icons/Speaker.png
@@ -142,6 +152,7 @@ share/WindowMaker/Icons/TerminalGNUstep.tiff
share/WindowMaker/Icons/TerminalGNUstep.xpm
share/WindowMaker/Icons/TerminalLinux.tiff
share/WindowMaker/Icons/TerminalLinux.xpm
+share/WindowMaker/Icons/Wine.png
share/WindowMaker/Icons/XChat.png
share/WindowMaker/Icons/clip.tiff
share/WindowMaker/Icons/clip.xpm
@@ -165,8 +176,6 @@ share/WindowMaker/Icons/real.tiff
share/WindowMaker/Icons/real.xpm
share/WindowMaker/Icons/sgiterm.tiff
share/WindowMaker/Icons/sgiterm.xpm
-share/WindowMaker/Icons/sound.tiff
-share/WindowMaker/Icons/sound.xpm
share/WindowMaker/Icons/staroffice2.tiff
share/WindowMaker/Icons/staroffice2.xpm
share/WindowMaker/Icons/timer.tiff
@@ -221,11 +230,14 @@ share/WindowMaker/Styles/Spring.style
share/WindowMaker/Styles/Summer.style
share/WindowMaker/Styles/Traditional.style
share/WindowMaker/Styles/VioletBlue.style
+share/WindowMaker/Themes/Blau.style
share/WindowMaker/Themes/Default.style
share/WindowMaker/Themes/OpenStep.style
share/WindowMaker/Themes/Pastel.style
share/WindowMaker/Themes/SteelBlueSilk.style
+share/WindowMaker/appearance.menu
share/WindowMaker/autostart.sh
+share/WindowMaker/background.menu
share/WindowMaker/exitscript.sh
share/WindowMaker/menu
share/WindowMaker/menu.bg
@@ -273,63 +285,64 @@ share/WindowMaker/plmenu.sk
share/WindowMaker/plmenu.zh_CN
share/WindowMaker/plmenu.zh_TW
share/WindowMaker/wmmacros
-share/WindowMaker/xtree.dat
-%%WM_LINGUAS%%share/locale/be/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/bg/LC_MESSAGES/WINGs.mo
-%%WM_LINGUAS%%share/locale/bg/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/bg/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/bs/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/ca/LC_MESSAGES/WINGs.mo
-%%WM_LINGUAS%%share/locale/ca/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/ca/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/cs/LC_MESSAGES/WINGs.mo
-%%WM_LINGUAS%%share/locale/cs/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/cs/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/da/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/de/LC_MESSAGES/WINGs.mo
-%%WM_LINGUAS%%share/locale/de/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/de/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/el/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/es/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/es/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/et/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/et/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/fi/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/fi/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/fr/LC_MESSAGES/WINGs.mo
-%%WM_LINGUAS%%share/locale/fr/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/fr/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/gl/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/hr/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/hr/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/hu/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/hu/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/it/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/it/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/ja/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/ja/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/ko/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/ko/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/ms/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/nl/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/no/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/pl/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/pt/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/pt/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/ro/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/ru/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/ru/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/sk/LC_MESSAGES/WINGs.mo
-%%WM_LINGUAS%%share/locale/sk/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/sk/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/sv/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/tr/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/zh_CN/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/zh_CN/LC_MESSAGES/WindowMaker.mo
-%%WM_LINGUAS%%share/locale/zh_TW/LC_MESSAGES/WPrefs.mo
-%%WM_LINGUAS%%share/locale/zh_TW/LC_MESSAGES/WindowMaker.mo
-@exec mkdir -p %D/GNUstep/Applications/WPrefs.app/xpm
-@exec mkdir -p %D/share/WindowMaker/Sounds
+share/locale/be/LC_MESSAGES/WindowMaker.mo
+share/locale/bg/LC_MESSAGES/WINGs.mo
+share/locale/bg/LC_MESSAGES/WPrefs.mo
+share/locale/bg/LC_MESSAGES/WindowMaker.mo
+share/locale/bs/LC_MESSAGES/WindowMaker.mo
+share/locale/ca/LC_MESSAGES/WINGs.mo
+share/locale/ca/LC_MESSAGES/WPrefs.mo
+share/locale/ca/LC_MESSAGES/WindowMaker.mo
+share/locale/cs/LC_MESSAGES/WINGs.mo
+share/locale/cs/LC_MESSAGES/WPrefs.mo
+share/locale/cs/LC_MESSAGES/WindowMaker.mo
+share/locale/da/LC_MESSAGES/WindowMaker.mo
+share/locale/de/LC_MESSAGES/WINGs.mo
+share/locale/de/LC_MESSAGES/WPrefs.mo
+share/locale/de/LC_MESSAGES/WindowMaker.mo
+share/locale/de/LC_MESSAGES/wmgenmenu.mo
+share/locale/el/LC_MESSAGES/WindowMaker.mo
+share/locale/es/LC_MESSAGES/WPrefs.mo
+share/locale/es/LC_MESSAGES/WindowMaker.mo
+share/locale/es/LC_MESSAGES/wmgenmenu.mo
+share/locale/et/LC_MESSAGES/WPrefs.mo
+share/locale/et/LC_MESSAGES/WindowMaker.mo
+share/locale/fi/LC_MESSAGES/WPrefs.mo
+share/locale/fi/LC_MESSAGES/WindowMaker.mo
+share/locale/fr/LC_MESSAGES/WINGs.mo
+share/locale/fr/LC_MESSAGES/WPrefs.mo
+share/locale/fr/LC_MESSAGES/WindowMaker.mo
+share/locale/fr/LC_MESSAGES/wmgenmenu.mo
+share/locale/gl/LC_MESSAGES/WindowMaker.mo
+share/locale/hr/LC_MESSAGES/WPrefs.mo
+share/locale/hr/LC_MESSAGES/WindowMaker.mo
+share/locale/hu/LC_MESSAGES/WPrefs.mo
+share/locale/hu/LC_MESSAGES/WindowMaker.mo
+share/locale/hy/LC_MESSAGES/WindowMaker.mo
+share/locale/it/LC_MESSAGES/WPrefs.mo
+share/locale/it/LC_MESSAGES/WindowMaker.mo
+share/locale/ja/LC_MESSAGES/WPrefs.mo
+share/locale/ja/LC_MESSAGES/WindowMaker.mo
+share/locale/ko/LC_MESSAGES/WPrefs.mo
+share/locale/ko/LC_MESSAGES/WindowMaker.mo
+share/locale/ms/LC_MESSAGES/WindowMaker.mo
+share/locale/nl/LC_MESSAGES/WindowMaker.mo
+share/locale/no/LC_MESSAGES/WindowMaker.mo
+share/locale/pl/LC_MESSAGES/WindowMaker.mo
+share/locale/pt/LC_MESSAGES/WPrefs.mo
+share/locale/pt/LC_MESSAGES/WindowMaker.mo
+share/locale/ro/LC_MESSAGES/WindowMaker.mo
+share/locale/ru/LC_MESSAGES/WPrefs.mo
+share/locale/ru/LC_MESSAGES/WindowMaker.mo
+share/locale/sk/LC_MESSAGES/WINGs.mo
+share/locale/sk/LC_MESSAGES/WPrefs.mo
+share/locale/sk/LC_MESSAGES/WindowMaker.mo
+share/locale/sv/LC_MESSAGES/WindowMaker.mo
+share/locale/tr/LC_MESSAGES/WindowMaker.mo
+share/locale/zh_CN/LC_MESSAGES/WPrefs.mo
+share/locale/zh_CN/LC_MESSAGES/WindowMaker.mo
+share/locale/zh_TW/LC_MESSAGES/WPrefs.mo
+share/locale/zh_TW/LC_MESSAGES/WindowMaker.mo
@dirrm GNUstep/Applications/WPrefs.app/tiff
@dirrm GNUstep/Applications/WPrefs.app/xpm
@dirrm GNUstep/Applications/WPrefs.app