*** empty log message ***
[dana/urxvt.git] / src / command.C
index 1e61d26..4c5d324 100644 (file)
@@ -1184,6 +1184,8 @@ rxvt_W11_process_x_event (XEvent *ev)
 void
 rxvt_term::x_cb (XEvent &ev)
 {
+  dDisp;
+
   SET_R (this);
   SET_LOCALE (locale);
 
@@ -1324,17 +1326,17 @@ rxvt_term::x_cb (XEvent &ev)
             unsigned char *data;
             unsigned long Size, RemainingBytes;
 
-            XGetWindowProperty (display->display, display->root,
-                               xa[XA_DNDSELECTION],
-                               0L, 1000000L,
-                               False, AnyPropertyType,
-                               &ActualType, &ActualFormat,
-                               &Size, &RemainingBytes,
-                               &data);
+            XGetWindowProperty (disp, display->root,
+                                xa[XA_DNDSELECTION],
+                                0L, 1000000L,
+                                False, AnyPropertyType,
+                                &ActualType, &ActualFormat,
+                                &Size, &RemainingBytes,
+                                &data);
             set_string_property (XA_CUT_BUFFER0, data);
             XFree (data);
             selection_paste (display->root, XA_CUT_BUFFER0, true);
-            XSetInputFocus (display->display, display->root, RevertToNone, CurrentTime);
+            XSetInputFocus (disp, display->root, RevertToNone, CurrentTime);
           }
 #endif                         /* OFFIX_DND */
         break;
@@ -1437,7 +1439,7 @@ rxvt_term::x_cb (XEvent &ev)
                 height = ev.xconfigure.height;
                 D_SIZE ((stderr, "Size: ConfigureNotify: %4d x %4d", width, height));
               }
-            while (XCheckTypedWindowEvent (display->display, ev.xconfigure.window, ConfigureNotify, &ev));
+            while (XCheckTypedWindowEvent (disp, ev.xconfigure.window, ConfigureNotify, &ev));
 
             if (szHint.width != width || szHint.height != height)
               {
@@ -1499,11 +1501,11 @@ rxvt_term::x_cb (XEvent &ev)
             do
               scr_expose (ev.xexpose.x, ev.xexpose.y,
                           ev.xexpose.width, ev.xexpose.height, False);
-            while (XCheckTypedWindowEvent (display->display, TermWin.vt, ev.xany.type, &ev));
+            while (XCheckTypedWindowEvent (disp, TermWin.vt, ev.xany.type, &ev));
 
             ev.xany.type = ev.xany.type == Expose ? GraphicsExpose : Expose;
 
-            while (XCheckTypedWindowEvent (display->display, TermWin.vt, ev.xany.type, &ev))
+            while (XCheckTypedWindowEvent (disp, TermWin.vt, ev.xany.type, &ev))
               scr_expose (ev.xexpose.x, ev.xexpose.y,
                           ev.xexpose.width, ev.xexpose.height, False);
 
@@ -1513,9 +1515,9 @@ rxvt_term::x_cb (XEvent &ev)
           {
             XEvent unused_event;
 
-            while (XCheckTypedWindowEvent (display->display, ev.xany.window, Expose, &unused_event))
+            while (XCheckTypedWindowEvent (disp, ev.xany.window, Expose, &unused_event))
               ;
-            while (XCheckTypedWindowEvent (display->display, ev.xany.window, GraphicsExpose, &unused_event))
+            while (XCheckTypedWindowEvent (disp, ev.xany.window, GraphicsExpose, &unused_event))
               ;
 
             if (isScrollbarWindow (ev.xany.window))
@@ -1530,7 +1532,7 @@ rxvt_term::x_cb (XEvent &ev)
 
 #ifdef TRANSPARENT
             if (am_transparent && ev.xany.window == TermWin.parent[0])
-              XClearWindow (display->display, ev.xany.window);
+              XClearWindow (disp, ev.xany.window);
 #endif
           }
         break;
@@ -1554,10 +1556,10 @@ rxvt_term::x_cb (XEvent &ev)
           {
             if (ev.xbutton.state & (Button1Mask | Button3Mask))
               {
-                while (XCheckTypedWindowEvent (display->display, TermWin.vt, MotionNotify, &ev))
+                while (XCheckTypedWindowEvent (disp, TermWin.vt, MotionNotify, &ev))
                   ;
 
-                XQueryPointer (display->display, TermWin.vt,
+                XQueryPointer (disp, TermWin.vt,
                                &unused_root, &unused_child,
                                &unused_root_x, &unused_root_y,
                                &ev.xbutton.x, &ev.xbutton.y,
@@ -1631,11 +1633,11 @@ rxvt_term::x_cb (XEvent &ev)
           }
         else if (isScrollbarWindow (ev.xany.window) && scrollbar_isMotion ())
           {
-            while (XCheckTypedWindowEvent (display->display, scrollBar.win,
+            while (XCheckTypedWindowEvent (disp, scrollBar.win,
                                            MotionNotify, &ev))
               ;
 
-            XQueryPointer (display->display, scrollBar.win,
+            XQueryPointer (disp, scrollBar.win,
                           &unused_root, &unused_child,
                           &unused_root_x, &unused_root_y,
                           &ev.xbutton.x, &ev.xbutton.y,
@@ -2083,7 +2085,7 @@ void ShadeXImage(rxvt_display *display, XImage* srcImage, int shade, int rm, int
   unsigned int upper_lim_r, upper_lim_g, upper_lim_b;
   int i;
 
-  Visualvisual = display->visual;
+  Visual *visual = display->visual;
 
   if( visual->c_class != TrueColor || srcImage->format != ZPixmap ) return ;
 
@@ -2314,23 +2316,24 @@ rxvt_term::check_our_parents ()
   Window root, oldp, *list;
   Pixmap rootpixmap = None;
   XWindowAttributes wattr, wrootattr;
+  dDisp;
 
   pchanged = 0;
 
   if (!(options & Opt_transparent))
     return pchanged;   /* Don't try any more */
 
-  XGetWindowAttributes (display->display, display->root, &wrootattr);
+  XGetWindowAttributes (disp, display->root, &wrootattr);
   rootdepth = wrootattr.depth;
 
-  XGetWindowAttributes (display->display, TermWin.parent[0], &wattr);
+  XGetWindowAttributes (disp, TermWin.parent[0], &wattr);
 
   if (rootdepth != wattr.depth)
     {
       if (am_transparent)
         {
           pchanged = 1;
-          XSetWindowBackground (display->display, TermWin.vt, pix_colors_focused[Color_bg]);
+          XSetWindowBackground (disp, TermWin.vt, pix_colors_focused[Color_bg]);
           am_transparent = am_pixmap_trans = 0;
         }
 
@@ -2338,7 +2341,7 @@ rxvt_term::check_our_parents ()
     }
 
   /* Get all X ops out of the queue so that our information is up-to-date. */
-  XSync (display->display, False);
+  XSync (disp, False);
 
   /*
    * Make the frame window set by the window manager have
@@ -2346,13 +2349,13 @@ rxvt_term::check_our_parents ()
    * windows for each client, so we have to take care about that.
    */
   i = (xa[XA_XROOTPMAP_ID]
-       && XGetWindowProperty (display->display, display->root, xa[XA_XROOTPMAP_ID],
+       && XGetWindowProperty (disp, display->root, xa[XA_XROOTPMAP_ID],
                               0L, 1L, False, XA_PIXMAP, &atype, &aformat,
                               &nitems, &bytes_after, &prop) == Success);
 
   if (!i || prop == NULL)
      i = (xa[XA_ESETROOT_PMAP_ID]
-          && XGetWindowProperty (display->display, display->root, xa[XA_ESETROOT_PMAP_ID],
+          && XGetWindowProperty (disp, display->root, xa[XA_ESETROOT_PMAP_ID],
                                  0L, 1L, False, XA_PIXMAP, &atype, &aformat,
                                  &nitems, &bytes_after, &prop) == Success);
 
@@ -2381,7 +2384,7 @@ rxvt_term::check_our_parents ()
       GC gc;
       XGCValues gcvalue;
 
-      XTranslateCoordinates (display->display, TermWin.parent[0], display->root,
+      XTranslateCoordinates (disp, TermWin.parent[0], display->root,
                              0, 0, &sx, &sy, &cr);
       nw = (unsigned int)szHint.width;
       nh = (unsigned int)szHint.height;
@@ -2404,9 +2407,9 @@ rxvt_term::check_our_parents ()
       MIN_IT (nw, (unsigned int) (wrootattr.width - sx));
       MIN_IT (nh, (unsigned int) (wrootattr.height - sy));
 
-      XSync (display->display, False);
+      XSync (disp, False);
       allowedxerror = -1;
-      image = XGetImage (display->display, rootpixmap, sx, sy, nw, nh, AllPlanes, ZPixmap);
+      image = XGetImage (disp, rootpixmap, sx, sy, nw, nh, AllPlanes, ZPixmap);
 
       /* XXX: handle BadMatch - usually because we're outside the pixmap */
       /* XXX: may need a delay here? */
@@ -2419,7 +2422,7 @@ rxvt_term::check_our_parents ()
               pchanged = 1;
               if (TermWin.pixmap != None)
                 {
-                  XFreePixmap (display->display, TermWin.pixmap);
+                  XFreePixmap (disp, TermWin.pixmap);
                   TermWin.pixmap = None;
                 }
             }
@@ -2429,7 +2432,7 @@ rxvt_term::check_our_parents ()
       else
         {
           if (TermWin.pixmap != None)
-            XFreePixmap (display->display, TermWin.pixmap);
+            XFreePixmap (disp, TermWin.pixmap);
 
 #if TINTING
           if (ISSET_PIXCOLOR (Color_tint))
@@ -2443,15 +2446,15 @@ rxvt_term::check_our_parents ()
             }
 #endif
 
-          TermWin.pixmap = XCreatePixmap (display->display, TermWin.vt,
+          TermWin.pixmap = XCreatePixmap (disp, TermWin.vt,
                                           szHint.width, szHint.height, image->depth);
-          gc = XCreateGC (display->display, TermWin.vt, 0UL, &gcvalue);
-          XPutImage (display->display, TermWin.pixmap, gc, image, 0, 0,
+          gc = XCreateGC (disp, TermWin.vt, 0UL, &gcvalue);
+          XPutImage (disp, TermWin.pixmap, gc, image, 0, 0,
                      nx, ny, image->width, image->height);
-          XFreeGC (display->display, gc);
+          XFreeGC (disp, gc);
           XDestroyImage (image);
-          XSetWindowBackgroundPixmap (display->display, TermWin.parent[0], TermWin.pixmap);
-          XClearWindow (display->display, TermWin.parent[0]);
+          XSetWindowBackgroundPixmap (disp, TermWin.parent[0], TermWin.pixmap);
+          XClearWindow (disp, TermWin.parent[0]);
 
           if (!am_transparent || !am_pixmap_trans)
             pchanged = 1;
@@ -2461,7 +2464,7 @@ rxvt_term::check_our_parents ()
     }
 
   if (am_pixmap_trans)
-    XSetWindowBackgroundPixmap (display->display, TermWin.vt, ParentRelative);
+    XSetWindowBackgroundPixmap (disp, TermWin.vt, ParentRelative);
   else
     {
       unsigned int n;
@@ -2471,7 +2474,7 @@ rxvt_term::check_our_parents ()
       for (i = 1; i < (int) (sizeof (TermWin.parent) / sizeof (Window)); i++)
         {
           oldp = TermWin.parent[i];
-          XQueryTree (display->display, TermWin.parent[i - 1], &root,
+          XQueryTree (disp, TermWin.parent[i - 1], &root,
                       &TermWin.parent[i], &list, &n);
           XFree (list);
 
@@ -2493,7 +2496,7 @@ rxvt_term::check_our_parents ()
         {
           for (; n < (unsigned int)i; n++)
             {
-              XGetWindowAttributes (display->display, TermWin.parent[n], &wattr);
+              XGetWindowAttributes (disp, TermWin.parent[n], &wattr);
               if (wattr.depth != rootdepth || wattr.c_class == InputOnly)
                 {
                   n = (int) (sizeof (TermWin.parent) / sizeof (Window)) + 1;
@@ -2504,8 +2507,8 @@ rxvt_term::check_our_parents ()
 
       if (n > (int) (sizeof (TermWin.parent) / sizeof (TermWin.parent[0])))
         {
-          XSetWindowBackground (display->display, TermWin.parent[0], pix_colors_focused[Color_fg]);
-          XSetWindowBackground (display->display, TermWin.vt, pix_colors_focused[Color_bg]);
+          XSetWindowBackground (disp, TermWin.parent[0], pix_colors_focused[Color_fg]);
+          XSetWindowBackground (disp, TermWin.vt, pix_colors_focused[Color_bg]);
           am_transparent = 0;
           /* XXX: also turn off Opt_transparent? */
         }
@@ -2518,11 +2521,11 @@ rxvt_term::check_our_parents ()
 #endif
           for (n = 0; n < (unsigned int)i; n++)
             {
-              XSetWindowBackgroundPixmap (display->display, TermWin.parent[n], ParentRelative);
-              XClearWindow (display->display, TermWin.parent[n]);
+              XSetWindowBackgroundPixmap (disp, TermWin.parent[n], ParentRelative);
+              XClearWindow (disp, TermWin.parent[n]);
             }
 
-          XSetWindowBackgroundPixmap (display->display, TermWin.vt, ParentRelative);
+          XSetWindowBackgroundPixmap (disp, TermWin.vt, ParentRelative);
           am_transparent = 1;
         }
 
@@ -2532,7 +2535,7 @@ rxvt_term::check_our_parents ()
 
   if (scrollBar.win)
     {
-      XSetWindowBackgroundPixmap (display->display, scrollBar.win, ParentRelative);
+      XSetWindowBackgroundPixmap (disp, scrollBar.win, ParentRelative);
       scrollBar.setIdle ();
       scrollbar_show (0);
     }
@@ -3415,6 +3418,7 @@ rxvt_term::process_window_ops (const int *args, unsigned int nargs)
   int x, y;
   XWindowAttributes wattr;
   Window wdummy;
+  dDisp;
 
   if (nargs == 0)
     return;
@@ -3425,23 +3429,22 @@ rxvt_term::process_window_ops (const int *args, unsigned int nargs)
        * commands
        */
       case 1:                  /* deiconify window */
-        XMapWindow (display->display, TermWin.parent[0]);
+        XMapWindow (disp, TermWin.parent[0]);
         break;
       case 2:                  /* iconify window */
-        XIconifyWindow (display->display, TermWin.parent[0],
-                       DefaultScreen (display->display));
+        XIconifyWindow (disp, TermWin.parent[0], display->screen);
         break;
       case 3:                  /* set position (pixels) */
-        XMoveWindow (display->display, TermWin.parent[0], args[1], args[2]);
+        XMoveWindow (disp, TermWin.parent[0], args[1], args[2]);
         break;
       case 4:                  /* set size (pixels) */
         set_widthheight ((unsigned int)args[2], (unsigned int)args[1]);
         break;
       case 5:                  /* raise window */
-        XRaiseWindow (display->display, TermWin.parent[0]);
+        XRaiseWindow (disp, TermWin.parent[0]);
         break;
       case 6:                  /* lower window */
-        XLowerWindow (display->display, TermWin.parent[0]);
+        XLowerWindow (disp, TermWin.parent[0]);
         break;
       case 7:                  /* refresh window */
         scr_touch (true);
@@ -3463,18 +3466,18 @@ rxvt_term::process_window_ops (const int *args, unsigned int nargs)
        * reports - some output format copied from XTerm
        */
       case 11:                 /* report window state */
-        XGetWindowAttributes (display->display, TermWin.parent[0], &wattr);
+        XGetWindowAttributes (disp, TermWin.parent[0], &wattr);
         tt_printf ("\033[%dt", wattr.map_state == IsViewable ? 1 : 2);
         break;
       case 13:                 /* report window position */
-        XGetWindowAttributes (display->display, TermWin.parent[0], &wattr);
-        XTranslateCoordinates (display->display, TermWin.parent[0], wattr.root,
+        XGetWindowAttributes (disp, TermWin.parent[0], &wattr);
+        XTranslateCoordinates (disp, TermWin.parent[0], wattr.root,
                                -wattr.border_width, -wattr.border_width,
                                &x, &y, &wdummy);
         tt_printf ("\033[3;%d;%dt", x, y);
         break;
       case 14:                 /* report window size (pixels) */
-        XGetWindowAttributes (display->display, TermWin.parent[0], &wattr);
+        XGetWindowAttributes (disp, TermWin.parent[0], &wattr);
         tt_printf ("\033[4;%d;%dt", wattr.height, wattr.width);
         break;
       case 18:                 /* report text area size (chars) */
@@ -3486,7 +3489,7 @@ rxvt_term::process_window_ops (const int *args, unsigned int nargs)
       case 20:                 /* report icon label */
         {
           char *s;
-          XGetIconName (display->display, TermWin.parent[0], &s);
+          XGetIconName (disp, TermWin.parent[0], &s);
           tt_printf ("\033]L%-.250s\234", (options & Opt_insecure) && s ? s : "");     /* 8bit ST */
           XFree (s);
         }
@@ -3494,7 +3497,7 @@ rxvt_term::process_window_ops (const int *args, unsigned int nargs)
       case 21:                 /* report window title */
         {
           char *s;
-          XFetchName (display->display, TermWin.parent[0], &s);
+          XFetchName (disp, TermWin.parent[0], &s);
           tt_printf ("\033]l%-.250s\234", (options & Opt_insecure) && s ? s : "");     /* 8bit ST */
           XFree (s);
         }
@@ -3646,6 +3649,7 @@ rxvt_term::process_xterm_seq (int op, const char *str, unsigned char resp)
   char *buf, *name;
   bool query = str[0] == '?' && !str[1];
   int saveop = op;
+  dDisp;
 
   assert (str != NULL);
   switch (op)
@@ -3671,7 +3675,7 @@ rxvt_term::process_xterm_seq (int op, const char *str, unsigned char resp)
             const char *str = "";
 
             if (prop
-                && XGetWindowProperty (display->display, TermWin.parent[0],
+                && XGetWindowProperty (disp, TermWin.parent[0],
                                        prop, 0, 1<<16, 0, AnyPropertyType,
                                        &actual_type, &actual_format,
                                        &nitems, &bytes_after, &value) == Success
@@ -3693,7 +3697,7 @@ rxvt_term::process_xterm_seq (int op, const char *str, unsigned char resp)
                 set_utf8_property (display->atom (str), eq + 1);
               }
             else
-              XDeleteProperty (display->display, TermWin.parent[0],
+              XDeleteProperty (disp, TermWin.parent[0],
                                display->atom (str));
           }
         break;