--- ./window.c	2004-10-23 05:11:10.000000000 +0200
+++ ./src/window.c	2004-12-31 10:52:16.031391704 +0100
@@ -3100,13 +3100,17 @@
 
     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);
-            }
+            WObjDescriptor *desc;
+            /* SIP double click opens window menu */
+            OpenWindowMenu(wwin, event->xbutton.x_root, 
+            wwin->frame_y+wwin->frame->top_width, False);
+
+            /* allow drag select */
+           desc = &wwin->screen_ptr->window_menu->menu->descriptor;
+           event->xany.send_event = True;
+           (*desc->handle_mousedown)(desc, event);
+
+            XUngrabPointer(dpy, CurrentTime);
         } else {
             int dir = 0;
 
@@ -3204,15 +3208,11 @@
         wSetFocusTo(wwin->screen_ptr, wwin);
     }
 
-    if (event->xbutton.button == Button1
-        || event->xbutton.button == Button2) {
-
-        if (event->xbutton.button == Button1) {
-            if (event->xbutton.state & MOD_MASK) {
-                wLowerFrame(wwin->frame->core);
-            } else {
-                wRaiseFrame(wwin->frame->core);
-            }
+    if (event->xbutton.button == Button1) {
+        if (event->xbutton.state & MOD_MASK) {
+            wLowerFrame(wwin->frame->core);
+        } else {
+            wRaiseFrame(wwin->frame->core);
         }
         if ((event->xbutton.state & ShiftMask)
             && !(event->xbutton.state & ControlMask)) {
@@ -3249,16 +3249,21 @@
 #endif
             return;
         }
+        if (!WFLAGP(wwin, no_shadeable)) {
+            /* shade window */
+            if (wwin->flags.shaded){
+                if (event->xbutton.state & MOD_MASK) {
+                    wLowerFrame(wwin->frame->core);
+                } else {
+                    wRaiseFrame(wwin->frame->core);
+                }        
+                wUnshadeWindow(wwin);
+            }
+            else {
+                wShadeWindow(wwin);
+            }
+        }
 
-        OpenWindowMenu(wwin, event->xbutton.x_root,
-                       wwin->frame_y+wwin->frame->top_width, False);
-
-        /* allow drag select */
-        desc = &wwin->screen_ptr->window_menu->menu->descriptor;
-        event->xany.send_event = True;
-        (*desc->handle_mousedown)(desc, event);
-
-        XUngrabPointer(dpy, CurrentTime);
     }
 }
 
