set _NET_WM_USER_TIME on the window
[dana/urxvt.git] / src / rxvt.h
index d60e6aa..3799b62 100644 (file)
@@ -249,7 +249,11 @@ struct mouse_event
 # define COLORTERMENVFULL COLORTERMENV
 #endif
 #ifndef TERMENV
-# define TERMENV        "rxvt-unicode"
+# ifdef USE_256_COLORS
+#  define TERMENV        "rxvt-unicode-256color"
+# else
+#  define TERMENV        "rxvt-unicode"
+# endif
 #endif
 
 #if defined (NO_MOUSE_REPORT) && !defined (NO_MOUSE_REPORT_SCROLLBAR)
@@ -326,6 +330,8 @@ enum {
 // toggle this to force redraw, must be != RS_Careful and otherwise "pretty neutral"
 #define RS_redraw              (2UL << RS_fontShift)
 
+#define RS_Sel                  (1UL << 22)
+
 // 5 custom bits for extensions
 #define RS_customCount          16UL
 #define RS_customShift          23
@@ -387,7 +393,8 @@ enum {
   XTerm_Color_pointer_bg = 14,      // change actual 'Pointer' bg color
   XTerm_Color05          = 15,      // not implemented (tektronix fg)
   XTerm_Color06          = 16,      // not implemented (tektronix bg)
-  XTerm_Color_RV         = 17,      // change actual 'Highlight' color
+  XTerm_Color_HC         = 17,      // change actual 'Highlight' bg color
+  XTerm_Color_HTC        = 19,      // change actual 'Highlight' fg color
   XTerm_logfile          = 46,      // not implemented
   XTerm_font             = 50,
 
@@ -399,8 +406,6 @@ enum {
    */
 
   // deprecated
-  Rxvt_Color_BD          = 18,
-  Rxvt_Color_UL          = 19,
   Rxvt_restoreFG         = 39,
   Rxvt_restoreBG         = 49,
 
@@ -487,6 +492,7 @@ enum colour_list {
 #endif
 #ifdef OPTION_HC
   Color_HC,
+  Color_HTC,
 #endif
   Color_scroll,
 #ifdef RXVT_SCROLLBAR
@@ -959,7 +965,6 @@ struct rxvt_vars : TermWin_t
   XSizeHints      szHint;
   rxvt_color     *pix_colors;
   Cursor          TermWin_cursor;       /* cursor for vt window */
-  int             numlock_state;
   line_t         *row_buf;      // all lines, scrollback + terminal, circular, followed by temp_buf
   line_t         *drawn_buf;    // text on screen
   line_t         *swap_buf;     // lines for swap buffer
@@ -1056,6 +1061,7 @@ struct rxvt_term : zero_initialized, rxvt_vars, rxvt_screen
                   old_height; /* last used height in screen resize         */
   unsigned long   priv_modes,
                   SavedModes;
+  bool            button_state[5];
 /* ---------- */
   Atom            *xa;
 /* ---------- */
@@ -1239,6 +1245,7 @@ struct rxvt_term : zero_initialized, rxvt_vars, rxvt_screen
   // command.C
   void key_press (XKeyEvent &ev);
   void key_release (XKeyEvent &ev);
+  void update_user_time (Time time);
   unsigned int cmd_write (const char *str, unsigned int count);
 
   wchar_t next_char () NOTHROW;
@@ -1470,7 +1477,7 @@ struct rxvt_term : zero_initialized, rxvt_vars, rxvt_screen
   int selection_request_other (Atom target, int selnum) NOTHROW;
   void selection_clear (bool clipboard = false) NOTHROW;
   void clipboard_copy (Time tm);
-  void selection_make (Time tm);
+  void selection_make (Time tm, bool clipboard = false);
   bool selection_grab (Time tm, bool clipboard = false) NOTHROW;
   void selection_start_colrow (int col, int row) NOTHROW;
   void selection_delimit_word (enum page_dirn dirn, const row_col_t *mark, row_col_t *ret) NOTHROW;