X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=WindowMaker-singleclick.patch;h=e52618cb98bfd6f0db2492631ab1524bf22c4735;hb=428e07c2c5b831c5e2892ff5f110f75248844aeb;hp=2723b69d5aba0708fdce7744584e9a5451e35636;hpb=5a1d62158e1db220d1219b84cb24c887f10eb7d2;p=packages%2FWindowMaker.git diff --git a/WindowMaker-singleclick.patch b/WindowMaker-singleclick.patch index 2723b69..e52618c 100644 --- a/WindowMaker-singleclick.patch +++ b/WindowMaker-singleclick.patch @@ -1,43 +1,53 @@ ---- WindowMaker-0.61.0/WPrefs.app/Expert.c Sat Sep 18 02:11:58 1999 -+++ WindowMaker-0.61.0.singleclick/WPrefs.app/Expert.c Sun Oct 10 16:49:18 1999 -@@ -53,6 +53,7 @@ - WMSetButtonSelected(panel->swi[3], GetBoolForKey("UseSaveUnders")); - WMSetButtonSelected(panel->swi[4], GetBoolForKey("DisableBlinking")); - WMSetButtonSelected(panel->swi[5], GetBoolForKey("DontConfirmKill")); -+ WMSetButtonSelected(panel->swi[6], GetBoolForKey("SingleClickLaunch")); +--- WindowMaker-0.65.1/WPrefs.app/Expert.c.orig Mon Jun 4 19:47:32 2001 ++++ WindowMaker-0.65.1/WPrefs.app/Expert.c Thu Jul 26 12:09:03 2001 +@@ -33,7 +33,7 @@ + + WMWidget *parent; + +- WMButton *swi[8]; ++ WMButton *swi[10]; + + } _Panel; + +@@ -54,6 +54,7 @@ + WMSetButtonSelected(panel->swi[4], GetBoolForKey("DontConfirmKill")); + WMSetButtonSelected(panel->swi[5], GetBoolForKey("DisableBlinking")); + WMSetButtonSelected(panel->swi[6], GetBoolForKey("AntialiasedText")); ++ WMSetButtonSelected(panel->swi[7], GetBoolForKey("SingleClickLaunch")); } @@ -66,7 +67,7 @@ - WMResizeWidget(panel->frame, FRAME_WIDTH, FRAME_HEIGHT); - WMMoveWidget(panel->frame, FRAME_LEFT, FRAME_TOP); - -- for (i=0; i<6; i++) { -+ for (i=0; i<7; i++) { - panel->swi[i] = WMCreateSwitchButton(panel->frame); - WMResizeWidget(panel->swi[i], FRAME_WIDTH-40, 25); - WMMoveWidget(panel->swi[i], 20, 20+i*25); -@@ -78,6 +79,7 @@ - WMSetButtonText(panel->swi[3], _("Use SaveUnder in window frames, icons, menus and other objects")); - WMSetButtonText(panel->swi[4], _("Disable cycling color highlighting of icons.")); - WMSetButtonText(panel->swi[5], _("Disable confirmation panel for the Kill command.")); -+ WMSetButtonText(panel->swi[6], _("Launch applications and restore windows with a single click")); - - WMRealizeWidget(panel->frame); - WMMapSubwidgets(panel->frame); -@@ -99,6 +101,7 @@ - SetBoolForKey(WMGetButtonSelected(panel->swi[3]), "UseSaveUnders"); - SetBoolForKey(WMGetButtonSelected(panel->swi[4]), "DisableBlinking"); - SetBoolForKey(WMGetButtonSelected(panel->swi[5]), "DontConfirmKill"); -+ SetBoolForKey(WMGetButtonSelected(panel->swi[6]), "SingleClickLaunch"); + panel->box = WMCreateBox(panel->parent); + WMSetViewExpandsToParent(WMWidgetView(panel->box), 2, 2, 2, 2); + +- for (i=0; i<7; i++) { ++ for (i=0; i<8; i++) { + panel->swi[i] = WMCreateSwitchButton(panel->box); + WMResizeWidget(panel->swi[i], FRAME_WIDTH-40, 25); + WMMoveWidget(panel->swi[i], 20, 20+i*25); +@@ -79,6 +80,7 @@ + WMSetButtonText(panel->swi[4], _("Disable confirmation panel for the Kill command.")); + WMSetButtonText(panel->swi[5], _("Disable selection animation for selected icons.")); + WMSetButtonText(panel->swi[6], _("Smooth font edges (needs restart).")); ++ WMSetButtonText(panel->swi[7], _("Launch applications and restore windows with a single click")); + + WMSetButtonEnabled(panel->swi[6], True); + +@@ -101,6 +103,7 @@ + SetBoolForKey(WMGetButtonSelected(panel->swi[4]), "DontConfirmKill"); + SetBoolForKey(WMGetButtonSelected(panel->swi[5]), "DisableBlinking"); + SetBoolForKey(WMGetButtonSelected(panel->swi[6]), "AntialiasedText"); ++ SetBoolForKey(WMGetButtonSelected(panel->swi[7]), "SingleClickLaunch"); } ---- WindowMaker-0.61.0/src/WindowMaker.h Fri Sep 17 17:42:07 1999 -+++ WindowMaker-0.61.0.singleclick/src/WindowMaker.h Sun Oct 10 16:51:11 1999 -@@ -400,6 +400,9 @@ +diff -ur WindowMaker-0.64.0/src/WindowMaker.h WindowMaker-0.64.0.new/src/WindowMaker.h +--- WindowMaker-0.64.0/src/WindowMaker.h Fri Feb 9 16:56:53 2001 ++++ WindowMaker-0.64.0.new/src/WindowMaker.h Wed Mar 21 19:59:08 2001 +@@ -435,6 +435,9 @@ /* shading animation */ - char shade_speed; + signed char shade_speed; + /* single click to lauch applications */ + char single_click; @@ -45,57 +55,60 @@ int edge_resistance; char attract; ---- WindowMaker-0.61.0/src/appicon.c Thu Sep 16 05:22:53 1999 -+++ WindowMaker-0.61.0.singleclick/src/appicon.c Sun Oct 10 16:51:11 1999 -@@ -739,6 +739,7 @@ +diff -ur WindowMaker-0.64.0/src/appicon.c WindowMaker-0.64.0.new/src/appicon.c +--- WindowMaker-0.64.0/src/appicon.c Thu Jan 18 20:21:57 2001 ++++ WindowMaker-0.64.0.new/src/appicon.c Wed Mar 21 19:59:08 2001 +@@ -704,6 +704,7 @@ int shad_x = 0, shad_y = 0, docking=0, dockable, collapsed = 0; int ix, iy; int clickButton = event->xbutton.button; -+ Bool hasMoved; ++ Bool hasMoved; Pixmap ghost = None; Window wins[2]; - -@@ -800,6 +801,7 @@ + Bool movingSingle = False; +@@ -785,6 +786,7 @@ XClearWindow(dpy, scr->dock_shadow); } -+ hasMoved = False; ++ hasMoved = False; while (!done) { - WMMaskEvent(dpy, PointerMotionMask|ButtonReleaseMask|ButtonPressMask - |ButtonMotionMask|ExposureMask, &ev); -@@ -809,6 +811,7 @@ - break; - - case MotionNotify: -+ hasMoved = True; - if (!grabbed) { - if (abs(dx-ev.xmotion.x)>=MOVE_THRESHOLD - || abs(dy-ev.xmotion.y)>=MOVE_THRESHOLD) { -@@ -935,6 +938,9 @@ - wArrangeIcons(scr, True); - - done = 1; -+ if (!hasMoved && wPreferences.single_click) { -+ iconDblClick(desc, event); -+ } - break; - } + WMMaskEvent(dpy, PointerMotionMask|ButtonReleaseMask|ButtonPressMask + |ButtonMotionMask|ExposureMask, &ev); +@@ -794,6 +796,7 @@ + break; + + case MotionNotify: ++ hasMoved = True; + if (!grabbed) { + if (abs(dx-ev.xmotion.x)>=MOVE_THRESHOLD + || abs(dy-ev.xmotion.y)>=MOVE_THRESHOLD) { +@@ -943,6 +946,9 @@ + wArrangeIcons(scr, True); + + done = 1; ++ if (!hasMoved && wPreferences.single_click) { ++ iconDblClick(desc, event); ++ } + break; + } } ---- WindowMaker-0.61.0/src/defaults.c Fri Sep 17 17:42:09 1999 -+++ WindowMaker-0.61.0.singleclick/src/defaults.c Sun Oct 10 16:51:11 1999 -@@ -503,6 +503,9 @@ +diff -ur WindowMaker-0.64.0/src/defaults.c WindowMaker-0.64.0.new/src/defaults.c +--- WindowMaker-0.64.0/src/defaults.c Thu Jan 18 20:21:57 2001 ++++ WindowMaker-0.64.0.new/src/defaults.c Wed Mar 21 19:59:08 2001 +@@ -547,6 +547,9 @@ {"DisableBlinking", "NO", NULL, - &wPreferences.dont_blink, getBool, NULL + &wPreferences.dont_blink, getBool, NULL }, -+ {"SingleClickLaunch", "NO", NULL, -+ &wPreferences.single_click, getBool, NULL -+ }, - #ifdef WEENDOZE_CYCLE - {"WindozeCycling","NO", NULL, - &wPreferences.windoze_cycling, getBool, NULL ---- WindowMaker-0.61.0/src/dock.c Thu Sep 16 05:22:53 1999 -+++ WindowMaker-0.61.0.singleclick/src/dock.c Sun Oct 10 16:51:11 1999 -@@ -3806,7 +3806,7 @@ ++ {"SingleClickLaunch", "NO", NULL, ++ &wPreferences.single_click, getBool, NULL ++ }, + /* style options */ + {"MenuStyle", "normal", seMenuStyles, + &wPreferences.menu_style, getEnum, setMenuStyle +diff -ur WindowMaker-0.64.0/src/dock.c WindowMaker-0.64.0.new/src/dock.c +--- WindowMaker-0.64.0/src/dock.c Thu Jan 18 02:33:45 2001 ++++ WindowMaker-0.64.0.new/src/dock.c Wed Mar 21 19:59:08 2001 +@@ -3752,7 +3752,7 @@ @@ -104,7 +117,7 @@ handleIconMove(WDock *dock, WAppIcon *aicon, XEvent *event) { WScreen *scr = dock->screen_ptr; -@@ -3821,11 +3821,12 @@ +@@ -3767,11 +3767,11 @@ int ix = aicon->xindex, iy = aicon->yindex; int tmp; Pixmap ghost = None; @@ -113,75 +126,76 @@ int superfluous = wPreferences.superfluous; /* we catch it to avoid problems */ int omnipresent = aicon->omnipresent; /* this must be cached!!! */ - +- + hasMoved = False; if (wPreferences.flags.noupdates) - return; + return; -@@ -3876,6 +3877,7 @@ - break; +@@ -3822,6 +3822,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) { -@@ -4018,7 +4020,10 @@ + case MotionNotify: ++ hasMoved = True; + if (!grabbed) { + if (abs(ofs_x-ev.xmotion.x)>=MOVE_THRESHOLD + || abs(ofs_y-ev.xmotion.y)>=MOVE_THRESHOLD) { +@@ -3977,7 +3978,10 @@ #ifdef DEBUG - puts("End icon move"); + puts("End icon move"); #endif -- return; -+ if (!hasMoved) { -+ return 1; -+ } -+ return 0; - } +- return; ++ if (!hasMoved) { ++ return 1; ++ } ++ return 0; + } } } -@@ -4158,7 +4163,9 @@ +@@ -4117,7 +4121,9 @@ else handleDockMove(dock, aicon, event); } else -- handleIconMove(dock, aicon, event); -+ if (handleIconMove(dock, aicon, event) != 0 && -+ wPreferences.single_click) -+ iconDblClick(desc, event); +- handleIconMove(dock, aicon, event); ++ if (handleIconMove(dock, aicon, event) != 0 && ++ wPreferences.single_click) ++ iconDblClick(desc, event); } else if (event->xbutton.button==Button2 && dock->type==WM_CLIP && aicon==scr->clip_icon) { ---- WindowMaker-0.61.0/src/icon.c Sun May 30 07:02:56 1999 -+++ WindowMaker-0.61.0.singleclick/src/icon.c Sun Oct 10 16:51:11 1999 -@@ -863,6 +863,7 @@ +diff -ur WindowMaker-0.64.0/src/icon.c WindowMaker-0.64.0.new/src/icon.c +--- WindowMaker-0.64.0/src/icon.c Sat Jan 6 19:54:16 2001 ++++ WindowMaker-0.64.0.new/src/icon.c Wed Mar 21 19:59:08 2001 +@@ -874,6 +874,7 @@ int dx=event->xbutton.x, dy=event->xbutton.y; int grabbed=0; int clickButton=event->xbutton.button; -+ Bool hasMoved; ++ Bool hasMoved; if (WCHECK_STATE(WSTATE_MODAL)) - return; -@@ -905,6 +906,7 @@ - wwarning("pointer grab failed for icon move"); + return; +@@ -916,6 +917,7 @@ + wwarning("pointer grab failed for icon move"); #endif } -+ hasMoved = False; ++ hasMoved = False; while(1) { - WMMaskEvent(dpy, PointerMotionMask|ButtonReleaseMask|ButtonPressMask - |ButtonMotionMask|ExposureMask, &ev); -@@ -914,6 +916,7 @@ - break; - - case MotionNotify: -+ hasMoved = True; - if (!grabbed) { - if (abs(dx-ev.xmotion.x)>=MOVE_THRESHOLD - || abs(dy-ev.xmotion.y)>=MOVE_THRESHOLD) { -@@ -951,6 +954,9 @@ - - if (wPreferences.auto_arrange_icons) - wArrangeIcons(wwin->screen_ptr, True); -+ if (!hasMoved && wPreferences.single_click) { -+ miniwindowDblClick(desc, event); -+ } - return; - - } + WMMaskEvent(dpy, PointerMotionMask|ButtonReleaseMask|ButtonPressMask + |ButtonMotionMask|ExposureMask, &ev); +@@ -925,6 +927,7 @@ + break; + + case MotionNotify: ++ hasMoved = True; + if (!grabbed) { + if (abs(dx-ev.xmotion.x)>=MOVE_THRESHOLD + || abs(dy-ev.xmotion.y)>=MOVE_THRESHOLD) { +@@ -962,6 +965,9 @@ + + if (wPreferences.auto_arrange_icons) + wArrangeIcons(wwin->screen_ptr, True); ++ if (!hasMoved && wPreferences.single_click) { ++ miniwindowDblClick(desc, event); ++ } + return; + + }