diff options
author | dougb <dougb@FreeBSD.org> | 2012-02-18 17:16:03 +0800 |
---|---|---|
committer | dougb <dougb@FreeBSD.org> | 2012-02-18 17:16:03 +0800 |
commit | 8500a757a4183892e3e67d3d086c0162069c55cb (patch) | |
tree | d32133d02e3cb38118f981e3466e86387232f446 | |
parent | 2b3be023493bf87fe4944316e17ff096c9a2ee88 (diff) | |
download | freebsd-ports-gnome-8500a757a4183892e3e67d3d086c0162069c55cb.tar.gz freebsd-ports-gnome-8500a757a4183892e3e67d3d086c0162069c55cb.tar.zst freebsd-ports-gnome-8500a757a4183892e3e67d3d086c0162069c55cb.zip |
After just 7 short years, a new release of WindowMaker, 0.95.2
New features and highlights:
Left Half / Right Half Maximize.
Maximus: tiled maximization. Maximizes a window such that it occupies the
largest area without overlapping others.
New mouse-resizing functionality. Windows can now be resized vertically
(horizontally) using MOD+Wheel (CTRL+Wheel).
History and TAB completion in dialogs. To use this new functionality in
your old WMRootMenu, replace %a by %A in the relevant entry. It will
look like this (Run..., SHEXEC, "%A(Run, Type command:)"). Or use
wmgenmenu to generate a new menu.
Bouncing appicon effect.
New applications (wmgenmenu and wmmenugen) to generate the root menu
automatically by looking which applications you have on your $PATH.
Translations to German, Spanish and French of menus generated by
wmgenmenu.
Improved dockapp recognition.
And many trivial things which reduce little annoyances one might have.
For example, an option was added to control whether or not Window Maker
should do automatic workspace switching to satisfy a focus request from
a window located in another workspace.
Added keyboard shortcut to uncover/cover the dock.
Mac OS X-style window cycling.
Preliminary XRandR support (needs a bit more work to be bug-free).
Many other bug fixes.
For the ports:
* Remove patches that have been adopted upstream or otherwise made
obsolete
* Remove the OPTIONS, and enable all features
* Improve PREFIX-safety
* Otherwise simplify the windowmaker port
* Make libwraster a proper slave port
-rw-r--r-- | x11-wm/libwraster/Makefile | 51 | ||||
-rw-r--r-- | x11-wm/libwraster/pkg-descr | 2 | ||||
-rw-r--r-- | x11-wm/libwraster/pkg-plist | 7 | ||||
-rw-r--r-- | x11-wm/windowmaker/Makefile | 79 | ||||
-rw-r--r-- | x11-wm/windowmaker/distinfo | 4 | ||||
-rw-r--r-- | x11-wm/windowmaker/files/LINGUAS | 1 | ||||
-rw-r--r-- | x11-wm/windowmaker/files/extra_dockhotkeys.patch | 446 | ||||
-rw-r--r-- | x11-wm/windowmaker/files/patch-WINGs_wview.c | 23 | ||||
-rw-r--r-- | x11-wm/windowmaker/files/patch-WINGs_wwindow.c | 19 | ||||
-rw-r--r-- | x11-wm/windowmaker/files/patch-ag | 26 | ||||
-rw-r--r-- | x11-wm/windowmaker/files/patch-am | 9 | ||||
-rw-r--r-- | x11-wm/windowmaker/files/patch-src_actions.c | 35 | ||||
-rw-r--r-- | x11-wm/windowmaker/files/patch-src_dock.c | 11 | ||||
-rw-r--r-- | x11-wm/windowmaker/files/patch-src_event.c | 13 | ||||
-rw-r--r-- | x11-wm/windowmaker/files/patch-src_switchpanel.c | 42 | ||||
-rw-r--r-- | x11-wm/windowmaker/files/patch-src_wmspec.c | 118 | ||||
-rw-r--r-- | x11-wm/windowmaker/files/patch-wrlib_load.c | 11 | ||||
-rw-r--r-- | x11-wm/windowmaker/files/patch-wrlib_x86_specific.c | 130 | ||||
-rw-r--r-- | x11-wm/windowmaker/pkg-descr | 2 | ||||
-rw-r--r-- | x11-wm/windowmaker/pkg-plist | 151 |
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 |