summaryrefslogtreecommitdiff
path: root/x11-wm
diff options
context:
space:
mode:
authorVitaly Kushneriuk <vitaly@gentoo.org>2002-01-30 16:01:16 +0000
committerVitaly Kushneriuk <vitaly@gentoo.org>2002-01-30 16:01:16 +0000
commit88ccbfe78b997b1f876327b8dd309484e9edaf1b (patch)
treeb54b2af1808673d5325208fe358744ebc05e0f74 /x11-wm
parentWhere did these come from ?? (diff)
downloadgentoo-2-88ccbfe78b997b1f876327b8dd309484e9edaf1b.tar.gz
gentoo-2-88ccbfe78b997b1f876327b8dd309484e9edaf1b.tar.bz2
gentoo-2-88ccbfe78b997b1f876327b8dd309484e9edaf1b.zip
added patch for two new configuration options(runtime):
"Double click on title bar maximize" "Launch applications and restore windows with single click"
Diffstat (limited to 'x11-wm')
-rw-r--r--x11-wm/WindowMaker/WindowMaker-0.80.0-r1.ebuild93
-rw-r--r--x11-wm/WindowMaker/files/digest-WindowMaker-0.80.0-r12
-rw-r--r--x11-wm/WindowMaker/files/wmfpo-80.patch261
3 files changed, 356 insertions, 0 deletions
diff --git a/x11-wm/WindowMaker/WindowMaker-0.80.0-r1.ebuild b/x11-wm/WindowMaker/WindowMaker-0.80.0-r1.ebuild
new file mode 100644
index 000000000000..7418cac8082a
--- /dev/null
+++ b/x11-wm/WindowMaker/WindowMaker-0.80.0-r1.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2000 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License, v2 or later
+# Author Daniel Robbins <drobbins@gentoo.org>
+# $Header: /var/cvsroot/gentoo-x86/x11-wm/WindowMaker/WindowMaker-0.80.0-r1.ebuild,v 1.1 2002/01/30 16:01:16 vitaly Exp $
+
+S=${WORKDIR}/${P}
+DESCRIPTION="Window Maker"
+SRC_URI="ftp://ftp.windowmaker.org/pub/source/release/${P}.tar.gz
+ ftp://ftp.windowmaker.org/pub/source/release/WindowMaker-extra-0.1.tar.bz2"
+HOMEPAGE="http://www.windowmaker.org/"
+
+DEPEND="virtual/glibc virtual/x11
+ >=media-libs/tiff-3.5.5
+ >=media-libs/libpng-1.0.12
+ >=media-libs/jpeg-6b-r2
+ x11-wm/gnustep-env
+ gif? ( >=media-libs/giflib-4.1.0-r3 )
+ ungif? ( >=media-libs/libungif-4.1.0 )
+ nls? ( >=sys-devel/gettext-0.10.39 )"
+# Replaced by WINGS
+# >=x11-libs/libPropList-0.10.1"
+
+#NOTE: the default menu has the wrong path for the WMPrefs utility.
+# Needs fixing.
+
+src_compile() {
+
+ patch -p1 < ${FILESDIR}/wmfpo-80.patch
+
+ local myconf
+ if [ "`use gnome`" ] ; then
+ myconf="--enable-gnome"
+ fi
+ if [ "`use kde`" ] ; then
+ # hope this helps for linking against kdelibs,
+ # I'm not testing other wms right now
+ export KDEDIR=/usr/kde/2
+ myconf="$myconf --enable-kde"
+ fi
+ if [ "`use nls`" ] ; then
+ LINGUAS="`ls po/*.po | sed 's:po/\(.*\)\.po$:\1:'`"
+ export LINGUAS
+ fi
+
+ ./configure --host=${CHOST} \
+ --prefix=/usr \
+ --mandir=/usr/share/man \
+ --infodir=/usr/share/info \
+ --sysconfdir=/etc/X11 \
+ --with-nlsdir=/usr/share/locale \
+ --with-x \
+ --enable-newstyle \
+ --enable-superfluous \
+ --enable-usermenu \
+ $myconf || die
+
+ make || die
+
+ # WindowMaker Extra
+ cd ../WindowMaker-extra-0.1
+ ./configure --host=${CHOST} \
+ --prefix=/usr \
+ --mandir=/usr/share/man \
+ --infodir=/usr/share/info || die
+
+ make || die
+}
+
+src_install() {
+
+ make prefix=${D}/usr \
+ mandir=${D}/usr/share/man \
+ infodir=${D}/usr/share/info \
+ sysconfdir=${D}/etc/X11 \
+ NLSDIR=${D}/usr/share/locale \
+ GNUSTEP_LOCAL_ROOT=${D}${GNUSTEP_LOCAL_ROOT} \
+ install || die
+
+ cp -f WindowMaker/plmenu ${D}/etc/X11/WindowMaker/WMRootMenu
+
+ dodoc AUTHORS BUGFORUM BUGS ChangeLog COPYING* INSTALL* FAQ* \
+ MIRRORS README* NEWS TODO
+
+ # WindowMaker Extra
+ cd ../WindowMaker-extra-0.1
+ make prefix=${D}/usr \
+ mandir=${D}/usr/share/man \
+ infodir=${D}/usr/share/info \
+ install || die
+
+ newdoc README README.extra
+}
+
diff --git a/x11-wm/WindowMaker/files/digest-WindowMaker-0.80.0-r1 b/x11-wm/WindowMaker/files/digest-WindowMaker-0.80.0-r1
new file mode 100644
index 000000000000..5703a23614fa
--- /dev/null
+++ b/x11-wm/WindowMaker/files/digest-WindowMaker-0.80.0-r1
@@ -0,0 +1,2 @@
+MD5 0768a12edff35cba82e769fcbc8de430 WindowMaker-0.80.0.tar.gz 2457600
+MD5 e6fb381da0d207c320f58e7a1fea2a2b WindowMaker-extra-0.1.tar.bz2 245760
diff --git a/x11-wm/WindowMaker/files/wmfpo-80.patch b/x11-wm/WindowMaker/files/wmfpo-80.patch
new file mode 100644
index 000000000000..1ec26e791e94
--- /dev/null
+++ b/x11-wm/WindowMaker/files/wmfpo-80.patch
@@ -0,0 +1,261 @@
+diff -ur WindowMaker-0.80.0/WPrefs.app/Expert.c WindowMaker-0.80.0fpo1/WPrefs.app/Expert.c
+--- WindowMaker-0.80.0/WPrefs.app/Expert.c Mon May 21 18:11:17 2001
++++ WindowMaker-0.80.0fpo1/WPrefs.app/Expert.c Sat Jan 5 03:08:10 2002
+@@ -33,7 +33,7 @@
+
+ WMWidget *parent;
+
+- WMButton *swi[8];
++ WMButton *swi[10];
+
+ } _Panel;
+
+@@ -54,6 +54,8 @@
+ WMSetButtonSelected(panel->swi[4], GetBoolForKey("WindozeCycling"));
+ WMSetButtonSelected(panel->swi[5], GetBoolForKey("DontConfirmKill"));
+ WMSetButtonSelected(panel->swi[6], GetBoolForKey("DisableBlinking"));
++ WMSetButtonSelected(panel->swi[7], GetBoolForKey("DCMaximize"));
++ WMSetButtonSelected(panel->swi[8], GetBoolForKey("SingleClickLaunch"));
+ }
+
+
+@@ -66,10 +68,10 @@
+ panel->box = WMCreateBox(panel->parent);
+ WMSetViewExpandsToParent(WMWidgetView(panel->box), 2, 2, 2, 2);
+
+- for (i=0; i<7; i++) {
++ for (i=0; i<9; i++) {
+ panel->swi[i] = WMCreateSwitchButton(panel->box);
+ WMResizeWidget(panel->swi[i], FRAME_WIDTH-40, 25);
+- WMMoveWidget(panel->swi[i], 20, 20+i*25);
++ WMMoveWidget(panel->swi[i], 20, 20+i*23);
+ }
+
+ WMSetButtonText(panel->swi[0], _("Disable miniwindows (icons for miniaturized windows). For use with KDE/GNOME."));
+@@ -79,6 +81,8 @@
+ WMSetButtonText(panel->swi[4], _("Use Windoze style cycling."));
+ WMSetButtonText(panel->swi[5], _("Disable confirmation panel for the Kill command."));
+ WMSetButtonText(panel->swi[6], _("Disable selection animation for selected icons."));
++ WMSetButtonText(panel->swi[7], _("Double click on title bar maximize"));
++ WMSetButtonText(panel->swi[8], _("Launch applications and restore windows with a single click"));
+
+ WMRealizeWidget(panel->box);
+ WMMapSubwidgets(panel->box);
+@@ -101,6 +105,8 @@
+ SetBoolForKey(WMGetButtonSelected(panel->swi[4]), "WindozeCycling");
+ SetBoolForKey(WMGetButtonSelected(panel->swi[5]), "DontConfirmKill");
+ SetBoolForKey(WMGetButtonSelected(panel->swi[6]), "DisableBlinking");
++ SetBoolForKey(WMGetButtonSelected(panel->swi[7]), "DCMaximize");
++ SetBoolForKey(WMGetButtonSelected(panel->swi[8]), "SingleClickLaunch");
+ }
+
+
+diff -ur WindowMaker-0.80.0/src/WindowMaker.h WindowMaker-0.80.0fpo1/src/WindowMaker.h
+--- WindowMaker-0.80.0/src/WindowMaker.h Fri Dec 21 21:38:08 2001
++++ WindowMaker-0.80.0fpo1/src/WindowMaker.h Sat Jan 5 14:12:14 2002
+@@ -463,6 +463,12 @@
+ /* shading animation */
+ signed char shade_speed;
+
++ /* double click on title bar maximize */
++ char dc_maximize;
++
++ /* single click to lauch applications */
++ char single_click;
++
+ int edge_resistance;
+ char attract;
+
+diff -ur WindowMaker-0.80.0/src/appicon.c WindowMaker-0.80.0fpo1/src/appicon.c
+--- WindowMaker-0.80.0/src/appicon.c Tue Dec 18 03:43:48 2001
++++ WindowMaker-0.80.0fpo1/src/appicon.c Sat Jan 5 14:12:14 2002
+@@ -596,6 +596,7 @@
+ int shad_x = 0, shad_y = 0, docking=0, dockable, collapsed = 0;
+ int ix, iy;
+ int clickButton = event->xbutton.button;
++ Bool hasMoved = False;
+ Pixmap ghost = None;
+ Window wins[2];
+ Bool movingSingle = False;
+@@ -676,6 +677,7 @@
+ break;
+
+ case MotionNotify:
++ hasMoved = True;
+ if (!grabbed) {
+ if (abs(dx-ev.xmotion.x)>=MOVE_THRESHOLD
+ || abs(dy-ev.xmotion.y)>=MOVE_THRESHOLD) {
+@@ -812,6 +814,8 @@
+
+ if (wPreferences.auto_arrange_icons)
+ wArrangeIcons(scr, True);
++ if (!hasMoved && wPreferences.single_click)
++ iconDblClick(desc, event);
+
+ done = 1;
+ break;
+diff -ur WindowMaker-0.80.0/src/def_pixmaps.h WindowMaker-0.80.0fpo1/src/def_pixmaps.h
+--- WindowMaker-0.80.0/src/def_pixmaps.h Wed May 26 20:18:34 1999
++++ WindowMaker-0.80.0fpo1/src/def_pixmaps.h Sat Jan 5 14:12:14 2002
+@@ -86,15 +86,15 @@
+ ". c #000000",
+ "# c None",
+ "..........",
+-"..........",
+-"..........",
+-".########.",
+-".########.",
+-".########.",
+-".########.",
+-".########.",
+-".########.",
+-".........."
++".........#",
++"........##",
++".......###",
++"......####",
++".....#####",
++"....######",
++"...#######",
++"..########",
++".#########"
+ };
+
+ #ifdef XKB_BUTTON_HINT
+diff -ur WindowMaker-0.80.0/src/defaults.c WindowMaker-0.80.0fpo1/src/defaults.c
+--- WindowMaker-0.80.0/src/defaults.c Fri Dec 21 21:38:08 2001
++++ WindowMaker-0.80.0fpo1/src/defaults.c Sat Jan 5 14:12:14 2002
+@@ -548,6 +548,12 @@
+ {"DisableBlinking", "NO", NULL,
+ &wPreferences.dont_blink, getBool, NULL
+ },
++ {"DCMaximize", "NO", NULL,
++ &wPreferences.dc_maximize, getBool, NULL
++ },
++ {"SingleClickLaunch", "NO", NULL,
++ &wPreferences.single_click, getBool, NULL
++ },
+ /* style options */
+ {"MenuStyle", "normal", seMenuStyles,
+ &wPreferences.menu_style, getEnum, setMenuStyle
+diff -ur WindowMaker-0.80.0/src/dock.c WindowMaker-0.80.0fpo1/src/dock.c
+--- WindowMaker-0.80.0/src/dock.c Fri Dec 21 21:38:08 2001
++++ WindowMaker-0.80.0fpo1/src/dock.c Sat Jan 5 14:12:14 2002
+@@ -3772,7 +3772,7 @@
+
+
+
+-static void
++static Bool
+ handleIconMove(WDock *dock, WAppIcon *aicon, XEvent *event)
+ {
+ WScreen *scr = dock->screen_ptr;
+@@ -3788,6 +3788,7 @@
+ int tmp;
+ Pixmap ghost = None;
+ Bool docked;
++ Bool hasMoved = False;
+ int superfluous = wPreferences.superfluous; /* we catch it to avoid problems */
+ int omnipresent = aicon->omnipresent; /* this must be cached!!! */
+
+@@ -3842,6 +3843,7 @@
+ break;
+
+ case MotionNotify:
++ hasMoved = True;
+ if (!grabbed) {
+ if (abs(ofs_x-ev.xmotion.x)>=MOVE_THRESHOLD
+ || abs(ofs_y-ev.xmotion.y)>=MOVE_THRESHOLD) {
+@@ -3991,7 +3993,7 @@
+ #ifdef DEBUG
+ puts("End icon move");
+ #endif
+- return;
++ return hasMoved;
+ }
+ }
+ }
+@@ -4130,8 +4132,11 @@
+ handleClipChangeWorkspace(scr, event);
+ else
+ handleDockMove(dock, aicon, event);
+- } else
+- handleIconMove(dock, aicon, event);
++ } else {
++ Bool hasMoved = handleIconMove(dock, aicon, event);
++ if (!hasMoved && wPreferences.single_click)
++ iconDblClick(desc, event);
++ }
+
+ } else if (event->xbutton.button==Button2 && dock->type==WM_CLIP &&
+ aicon==scr->clip_icon) {
+diff -ur WindowMaker-0.80.0/src/icon.c WindowMaker-0.80.0fpo1/src/icon.c
+--- WindowMaker-0.80.0/src/icon.c Tue Jul 24 06:51:05 2001
++++ WindowMaker-0.80.0fpo1/src/icon.c Sat Jan 5 14:16:16 2002
+@@ -877,6 +877,7 @@
+ int dx=event->xbutton.x, dy=event->xbutton.y;
+ int grabbed=0;
+ int clickButton=event->xbutton.button;
++ Bool hasMoved = False;
+
+ if (WCHECK_STATE(WSTATE_MODAL))
+ return;
+@@ -928,6 +929,7 @@
+ break;
+
+ case MotionNotify:
++ hasMoved = True;
+ if (!grabbed) {
+ if (abs(dx-ev.xmotion.x)>=MOVE_THRESHOLD
+ || abs(dy-ev.xmotion.y)>=MOVE_THRESHOLD) {
+@@ -965,6 +967,9 @@
+
+ if (wPreferences.auto_arrange_icons)
+ wArrangeIcons(wwin->screen_ptr, True);
++ if (!hasMoved && wPreferences.single_click)
++ miniwindowDblClick(desc, event);
++
+ return;
+
+ }
+diff -ur WindowMaker-0.80.0/src/window.c WindowMaker-0.80.0fpo1/src/window.c
+--- WindowMaker-0.80.0/src/window.c Fri Dec 21 21:38:08 2001
++++ WindowMaker-0.80.0fpo1/src/window.c Sat Jan 5 14:18:07 2002
+@@ -2984,14 +2984,29 @@
+
+ if (event->xbutton.button==Button1) {
+ if (event->xbutton.state == 0) {
+- if (!WFLAGP(wwin, no_shadeable)) {
+- /* shade window */
+- if (wwin->flags.shaded)
+- wUnshadeWindow(wwin);
+- else
+- wShadeWindow(wwin);
+- }
+- } else {
++ /* check preferences, maximize or shade */
++ if (wPreferences.dc_maximize) {
++ if (!WFLAGP(wwin, no_resizable)) {
++ /* maximize window */
++ if (wwin->flags.maximized != 0) {
++ wUnmaximizeWindow(wwin);
++ wwin->flags.maximized = 0;
++ }
++ else {
++ wMaximizeWindow(wwin, MAX_VERTICAL|MAX_HORIZONTAL);
++ wwin->flags.maximized = MAX_VERTICAL|MAX_HORIZONTAL;
++ }
++ }
++ } else {
++ if (!WFLAGP(wwin, no_shadeable)) {
++ /* shade window */
++ if (wwin->flags.shaded)
++ wUnshadeWindow(wwin);
++ else
++ wShadeWindow(wwin);
++ }
++ }
++ } else {
+ int dir = 0;
+
+ if (event->xbutton.state & ControlMask)