*** empty log message ***
authorroot <root>
Thu, 3 Feb 2005 07:18:30 +0000 (07:18 +0000)
committerroot <root>
Thu, 3 Feb 2005 07:18:30 +0000 (07:18 +0000)
src/main.C
src/rxvt.h

index 857d5ad..994b781 100644 (file)
@@ -161,6 +161,7 @@ rxvt_term::rxvt_term ()
     im_ev (this, &rxvt_term::im_cb),
 #endif
     sw_term (this, &rxvt_term::sig_term),
+    sw_int (this, &rxvt_term::sig_term),
     sw_chld (this, &rxvt_term::sig_chld),
     termwin_ev (this, &rxvt_term::x_cb),
     vt_ev (this, &rxvt_term::x_cb),
@@ -189,12 +190,12 @@ rxvt_term::~rxvt_term ()
   if (cmd_pid)
     kill (-cmd_pid, SIGHUP);
 
-  pty.put ();
-
 #ifdef UTMP_SUPPORT
   privileged_utmp (RESTORE);
 #endif
 
+  pty.put ();
+
 #if ENABLE_STYLES
   for (int i = RS_styleCount; --i; )
     if (TermWin.fontset[i] != TermWin.fontset[0])
@@ -1117,6 +1118,7 @@ rxvt_term::resize_all_windows (unsigned int width, unsigned int height, int igno
       XMoveResizeWindow (display->display, TermWin.vt,
                          window_vt_x, window_vt_y,
                          TermWin_TotalWidth (), TermWin_TotalHeight ());
+
       scr_clear ();
 #ifdef XPM_BACKGROUND
       resize_pixmap ();
@@ -1149,6 +1151,11 @@ rxvt_term::resize_all_windows (unsigned int width, unsigned int height, int igno
   old_width = szHint.width;
   old_height = szHint.height;
 
+#ifdef XPM_BACKGROUND
+  if (TermWin.pixmap)
+    scr_touch (false);
+#endif
+
 #ifdef USE_XIM
   IMSetStatusPosition ();
 #endif
@@ -1387,7 +1394,7 @@ foundpet:
                TermWin.fheight + 1, TermWin.fheight - 1,
                TermWin.fheight - 2, TermWin.fheight + 2);
 
-      fs = XCreateFontSet (display->display, pat,
+      fs = XCreateFontSet (display->display, rs[Rs_imFont] ? rs[Rs_imFont] : pat,
                            &missing_charset_list, &missing_charset_count, &def_string);
 
       if (missing_charset_list)
index 2487a05..c2188f6 100644 (file)
@@ -565,8 +565,9 @@ enum {
   Rs_scrollBar_right,
   Rs_scrollBar_floating,
   Rs_scrollBar_align,
-#endif
   Rs_scrollstyle,     /* Rs_scrollBar_style */
+  Rs_scrollBar_thickness,
+#endif
   Rs_scrollTtyOutput,
   Rs_scrollTtyKeypress,
   Rs_scrollWithBuffer,
@@ -605,7 +606,6 @@ enum {
   Rs_int_bwidth,
   Rs_borderLess,
 #endif
-  Rs_scrollBar_thickness,
 #if ENABLE_FRILLS
   Rs_lineSpace,
 #endif
@@ -618,6 +618,7 @@ enum {
   Rs_pointerBlank,
   Rs_pointerBlankDelay,
   Rs_imLocale,
+  Rs_imFont,
   Rs_pastableTabs,
 #ifndef NO_SECONDARY_SCREEN
   Rs_secondaryScreen,
@@ -1231,7 +1232,7 @@ struct rxvt_term : zero_initialized, rxvt_vars {
 #endif
 
 
-  void sig_term (sig_watcher &w); sig_watcher sw_term;
+  void sig_term (sig_watcher &w); sig_watcher sw_term, sw_int;
   void sig_chld (sig_watcher &w); sig_watcher sw_chld;
 
   void x_cb (XEvent &xev);