1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-19 19:59:43 +00:00

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
This commit is contained in:
Doug Barton 2012-02-18 09:16:03 +00:00
parent 5ec360b901
commit e25425a4ab
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=291666
20 changed files with 126 additions and 1054 deletions

View File

@ -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
MASTERDIR= ${.CURDIR}/../windowmaker
MAKE_JOBS_SAFE= yes
LWR_SLAVE= yes
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
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"

View File

@ -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/

View File

@ -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

View File

@ -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>

View File

@ -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

View File

@ -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

View File

@ -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
}

View File

@ -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;

View File

@ -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;

View File

@ -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);

View File

@ -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),/;

View File

@ -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)

View File

@ -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,

View File

@ -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);

View File

@ -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);
}

View File

@ -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);

View File

@ -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

View File

@ -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"
);
}

View File

@ -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/

View File

@ -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