--- rxvt-unicode/src/rxvt.h 2007/08/13 22:41:34 1.292 +++ rxvt-unicode/src/rxvt.h 2007/09/08 20:55:49 1.301 @@ -101,9 +101,6 @@ ***************************************************************************** */ // main.C -RETSIGTYPE rxvt_Child_signal (int sig) NOTHROW; -RETSIGTYPE rxvt_Exit_signal (int sig) NOTHROW; -void rxvt_clean_exit () NOTHROW; void * rxvt_malloc (size_t size); void * rxvt_calloc (size_t number, size_t size); void * rxvt_realloc (void *ptr, size_t size); @@ -123,10 +120,7 @@ void rxvt_fatal (const char *fmt, ...) THROW ((class rxvt_failure_exception)) NORETURN; void rxvt_exit_failure () THROW ((class rxvt_failure_exception)) NORETURN; -int rxvt_Str_match (const char *s1, const char *s2) NOTHROW; -const char * rxvt_Str_skip_space (const char *str) NOTHROW; char * rxvt_Str_trim (char *str) NOTHROW; -int rxvt_Str_escaped (char *str) NOTHROW; char ** rxvt_splitcommastring (const char *cs) NOTHROW; void rxvt_freecommastring (char **cs) NOTHROW; @@ -136,7 +130,7 @@ extern char **environ; extern char **rxvt_environ; // the original environ pointer -inline void set_environ (stringvec *envv) +static inline void set_environ (stringvec *envv) { #if ENABLE_PERL assert (envv); @@ -146,7 +140,7 @@ environ = (char **)envv->begin (); } -inline void set_environ (char **envv) +static inline void set_environ (char **envv) { #if ENABLE_PERL assert (envv); @@ -183,9 +177,10 @@ tintSet = (1UL<<8), tintNeeded = (1UL<<9), - tintServerSide = (1UL<<10), - tintFlags = (tintSet|tintServerSide|tintNeeded), - blurNeeded = (1UL<<11), + tintWholesome = (1UL<<10), + tintServerSide = (1UL<<11), + tintFlags = (tintSet|tintServerSide|tintNeeded|tintWholesome), + blurNeeded = (1UL<<12), isTransparent = (1UL<<16), isInvalid = (1UL<<17) @@ -193,6 +188,13 @@ unsigned long flags; + enum { + transpPmapTiled = (1UL<<0), + transpPmapTinted = tintNeeded, + transpPmapBlured = blurNeeded, + transpTransformations = (tintNeeded|blurNeeded) + }; /* this flags are returned by make_transparency_pixmap if called */ + # ifdef XPM_BACKGROUND # ifdef HAVE_AFTERIMAGE ASImage *original_asim; @@ -232,24 +234,26 @@ bool unset_tint (); bool set_shade (const char *shade_str); bool set_root_pixmap (); - - enum { - transpPmapTiled = (1UL<<0), - transpPmapTinted = tintNeeded, - transpPmapBlured = blurNeeded, - transpTransformations = (tintNeeded|blurNeeded) - }; - unsigned long make_transparency_pixmap ();/* returns combination of the above flags */ + + unsigned long make_transparency_pixmap ();/* returns combination of the transpTransformations flags */ # endif + double invalid_since; Pixmap pixmap; unsigned int pmap_width, pmap_height; unsigned int pmap_depth; bool window_size_sensitive (); + bool need_client_side_rendering (); void apply (); bool render (); - void invalidate () { flags |= isInvalid; }; + void invalidate () { + if (!(flags & isInvalid)) + { + flags |= isInvalid; + invalid_since = NOW; + } + }; }; #else # undef HAVE_BG_PIXMAP @@ -691,11 +695,6 @@ /* #define PrivMode_MouseX11Track (1LU<<20) */ #define PrivMode_mouse_report (PrivMode_MouseX10|PrivMode_MouseX11) -#define PrivMode(test,bit) \ - if (test) \ - priv_modes |= (bit); \ - else \ - priv_modes &= ~(bit) #ifdef ALLOW_132_MODE # define PrivMode_Default (PrivMode_Autowrap|PrivMode_ShiftKeys|PrivMode_VisibleCursor|PrivMode_132OK) @@ -964,8 +963,6 @@ unsigned char want_refresh:1, #ifdef ENABLE_TRANSPARENCY want_full_refresh:1, /* awaiting full screen refresh */ - am_transparent:1, /* is a transparent term */ - am_pixmap_trans:1, /* transparency w/known root pixmap */ #endif current_screen:1, /* primary or secondary */ num_scr_allow:1, @@ -1158,10 +1155,10 @@ void rootwin_cb (XEvent &xev); xevent_watcher rootwin_ev; #endif -#if ENABLE_TRANSPARENCY - int check_our_parents (); - void check_our_parents_cb (time_watcher &w); - time_watcher check_our_parents_ev; +#ifdef HAVE_BG_PIXMAP + int update_background (); + void update_background_cb (time_watcher &w); + time_watcher update_background_ev; #endif void x_cb (XEvent &xev); @@ -1394,6 +1391,14 @@ options[opt >> 3] &= ~(1 << (opt & 7)); } + void PrivMode (int set, unsigned bit) NOTHROW + { + if (set) + priv_modes |= bit; + else + priv_modes &= ~bit; + } + void scr_blank_line (line_t &l, unsigned int col, unsigned int width, rend_t efs) const NOTHROW; void scr_blank_screen_mem (line_t &l, rend_t efs) const NOTHROW; int scr_scroll_text (int row1, int row2, int count) NOTHROW; @@ -1511,16 +1516,5 @@ Pixmap get_pixmap_property (int prop_id); }; -/* - ***************************************************************************** - * PROTOTYPES - ***************************************************************************** - */ -#ifdef PROTOTYPES -# define __PROTO(p) p -#else -# define __PROTO(p) () -#endif - #endif /* _RXVT_H_ */