1 --- WindowMaker-0.61.0/WPrefs.app/Expert.c Sat Sep 18 02:11:58 1999
2 +++ WindowMaker-0.61.0.singleclick/WPrefs.app/Expert.c Sun Oct 10 16:49:18 1999
4 WMSetButtonSelected(panel->swi[3], GetBoolForKey("UseSaveUnders"));
5 WMSetButtonSelected(panel->swi[4], GetBoolForKey("DisableBlinking"));
6 WMSetButtonSelected(panel->swi[5], GetBoolForKey("DontConfirmKill"));
7 + WMSetButtonSelected(panel->swi[6], GetBoolForKey("SingleClickLaunch"));
12 WMResizeWidget(panel->frame, FRAME_WIDTH, FRAME_HEIGHT);
13 WMMoveWidget(panel->frame, FRAME_LEFT, FRAME_TOP);
15 - for (i=0; i<6; i++) {
16 + for (i=0; i<7; i++) {
17 panel->swi[i] = WMCreateSwitchButton(panel->frame);
18 WMResizeWidget(panel->swi[i], FRAME_WIDTH-40, 25);
19 WMMoveWidget(panel->swi[i], 20, 20+i*25);
21 WMSetButtonText(panel->swi[3], _("Use SaveUnder in window frames, icons, menus and other objects"));
22 WMSetButtonText(panel->swi[4], _("Disable cycling color highlighting of icons."));
23 WMSetButtonText(panel->swi[5], _("Disable confirmation panel for the Kill command."));
24 + WMSetButtonText(panel->swi[6], _("Launch applications and restore windows with a single click"));
26 WMRealizeWidget(panel->frame);
27 WMMapSubwidgets(panel->frame);
29 SetBoolForKey(WMGetButtonSelected(panel->swi[3]), "UseSaveUnders");
30 SetBoolForKey(WMGetButtonSelected(panel->swi[4]), "DisableBlinking");
31 SetBoolForKey(WMGetButtonSelected(panel->swi[5]), "DontConfirmKill");
32 + SetBoolForKey(WMGetButtonSelected(panel->swi[6]), "SingleClickLaunch");
36 --- WindowMaker-0.61.0/src/WindowMaker.h Fri Sep 17 17:42:07 1999
37 +++ WindowMaker-0.61.0.singleclick/src/WindowMaker.h Sun Oct 10 16:51:11 1999
39 /* shading animation */
42 + /* single click to lauch applications */
48 --- WindowMaker-0.61.0/src/appicon.c Thu Sep 16 05:22:53 1999
49 +++ WindowMaker-0.61.0.singleclick/src/appicon.c Sun Oct 10 16:51:11 1999
51 int shad_x = 0, shad_y = 0, docking=0, dockable, collapsed = 0;
53 int clickButton = event->xbutton.button;
59 XClearWindow(dpy, scr->dock_shadow);
64 WMMaskEvent(dpy, PointerMotionMask|ButtonReleaseMask|ButtonPressMask
65 |ButtonMotionMask|ExposureMask, &ev);
72 if (abs(dx-ev.xmotion.x)>=MOVE_THRESHOLD
73 || abs(dy-ev.xmotion.y)>=MOVE_THRESHOLD) {
75 wArrangeIcons(scr, True);
78 + if (!hasMoved && wPreferences.single_click) {
79 + iconDblClick(desc, event);
84 --- WindowMaker-0.61.0/src/defaults.c Fri Sep 17 17:42:09 1999
85 +++ WindowMaker-0.61.0.singleclick/src/defaults.c Sun Oct 10 16:51:11 1999
87 {"DisableBlinking", "NO", NULL,
88 &wPreferences.dont_blink, getBool, NULL
90 + {"SingleClickLaunch", "NO", NULL,
91 + &wPreferences.single_click, getBool, NULL
94 {"WindozeCycling","NO", NULL,
95 &wPreferences.windoze_cycling, getBool, NULL
96 --- WindowMaker-0.61.0/src/dock.c Thu Sep 16 05:22:53 1999
97 +++ WindowMaker-0.61.0.singleclick/src/dock.c Sun Oct 10 16:51:11 1999
104 handleIconMove(WDock *dock, WAppIcon *aicon, XEvent *event)
106 WScreen *scr = dock->screen_ptr;
107 @@ -3821,11 +3821,12 @@
108 int ix = aicon->xindex, iy = aicon->yindex;
112 + Bool docked, hasMoved;
113 int superfluous = wPreferences.superfluous; /* we catch it to avoid problems */
114 int omnipresent = aicon->omnipresent; /* this must be cached!!! */
118 if (wPreferences.flags.noupdates)
121 @@ -3876,6 +3877,7 @@
127 if (abs(ofs_x-ev.xmotion.x)>=MOVE_THRESHOLD
128 || abs(ofs_y-ev.xmotion.y)>=MOVE_THRESHOLD) {
129 @@ -4018,7 +4020,10 @@
131 puts("End icon move");
141 @@ -4158,7 +4163,9 @@
143 handleDockMove(dock, aicon, event);
145 - handleIconMove(dock, aicon, event);
146 + if (handleIconMove(dock, aicon, event) != 0 &&
147 + wPreferences.single_click)
148 + iconDblClick(desc, event);
150 } else if (event->xbutton.button==Button2 && dock->type==WM_CLIP &&
151 aicon==scr->clip_icon) {
152 --- WindowMaker-0.61.0/src/icon.c Sun May 30 07:02:56 1999
153 +++ WindowMaker-0.61.0.singleclick/src/icon.c Sun Oct 10 16:51:11 1999
155 int dx=event->xbutton.x, dy=event->xbutton.y;
157 int clickButton=event->xbutton.button;
160 if (WCHECK_STATE(WSTATE_MODAL))
163 wwarning("pointer grab failed for icon move");
168 WMMaskEvent(dpy, PointerMotionMask|ButtonReleaseMask|ButtonPressMask
169 |ButtonMotionMask|ExposureMask, &ev);
176 if (abs(dx-ev.xmotion.x)>=MOVE_THRESHOLD
177 || abs(dy-ev.xmotion.y)>=MOVE_THRESHOLD) {
180 if (wPreferences.auto_arrange_icons)
181 wArrangeIcons(wwin->screen_ptr, True);
182 + if (!hasMoved && wPreferences.single_click) {
183 + miniwindowDblClick(desc, event);