From 9d96cf50d59f477ecaf8021e8016366f3ad6ee1b Mon Sep 17 00:00:00 2001 From: root Date: Mon, 23 Aug 2004 19:57:33 +0000 Subject: [PATCH] *** empty log message *** --- reconf | 6 ++++-- src/scrollbar-plain.C | 31 ++++++++++++++++++------------- src/scrollbar-rxvt.C | 36 ++++++++++++++++++++---------------- src/scrollbar-xterm.C | 37 +++++++++++++++++++++---------------- 4 files changed, 63 insertions(+), 47 deletions(-) diff --git a/reconf b/reconf index c2a6c3e4..751107c4 100755 --- a/reconf +++ b/reconf @@ -5,10 +5,12 @@ ./configure --prefix=/opt/rxvt --enable-utmp \ --enable-wtmp --enable-lastlog --disable-strings --enable-xim \ - --with-term=rxvt --disable-keepscrolling --enable-xft --enable-mousewheel \ + --disable-keepscrolling --enable-xft --enable-mousewheel \ --with-name=rxvt --enable-selectionscrolling --enable-pointer-blank \ --enable-frills --enable-swapscreen --enable-transparency --enable-slipwheeling \ - --with-codesets=all --enable-menubar --enable-tinting \ + --with-codesets=cn,jp,kr --enable-menubar --enable-tinting \ --enable-cursor-blink --enable-text-blink --enable-fading \ --enable-plain-scroll --enable-rxvt-scroll --enable-combining --enable-iso14755 \ + --enable-font-styles \ + --enable-next-scroll --enable-xterm-scroll \ "$@" diff --git a/src/scrollbar-plain.C b/src/scrollbar-plain.C index 38186098..d76427e1 100644 --- a/src/scrollbar-plain.C +++ b/src/scrollbar-plain.C @@ -28,7 +28,7 @@ #if defined(PLAIN_SCROLLBAR) int -rxvt_term::scrollbar_show_plain (int update __attribute__ ((unused)), int last_top, int last_bot, int scrollbar_len) +rxvt_term::scrollbar_show_plain (int update, int last_top, int last_bot, int scrollbar_len) { int xsb = 0; int sbwidth = scrollBar.width - 1; @@ -38,23 +38,28 @@ rxvt_term::scrollbar_show_plain (int update __attribute__ ((unused)), int last_t XGCValues gcvalue; scrollBar.init |= R_SB_PLAIN; - gcvalue.foreground = pix_colors[Color_fg]; - gcvalue.background = pix_colors[Color_bg]; + gcvalue.foreground = pix_colors_focused[Color_scroll]; pscrollbarGC = XCreateGC (display->display, scrollBar.win, - GCForeground | GCBackground, &gcvalue); + GCForeground, &gcvalue); } - /* instead of XClearWindow (display->display, scrollBar.win); */ + xsb = (options & Opt_scrollBar_right) ? 1 : 0; - if (last_top < scrollBar.top) - XClearArea (display->display, scrollBar.win, - sb_shadow + xsb, last_top, - sbwidth + 1, (scrollBar.top - last_top), False); - if (scrollBar.bot < last_bot) - XClearArea (display->display, scrollBar.win, - sb_shadow + xsb, scrollBar.bot, - sbwidth + 1, (last_bot - scrollBar.bot), False); + if (update) + { + if (last_top < scrollBar.top) + XClearArea (display->display, scrollBar.win, + sb_shadow + xsb, last_top, + sbwidth + 1, (scrollBar.top - last_top), False); + + if (scrollBar.bot < last_bot) + XClearArea (display->display, scrollBar.win, + sb_shadow + xsb, scrollBar.bot, + sbwidth + 1, (last_bot - scrollBar.bot), False); + } + else + XClearWindow (display->display, scrollBar.win); /* scrollbar slider */ XFillRectangle (display->display, scrollBar.win, pscrollbarGC, diff --git a/src/scrollbar-rxvt.C b/src/scrollbar-rxvt.C index c9e0cca0..3bf41834 100644 --- a/src/scrollbar-rxvt.C +++ b/src/scrollbar-rxvt.C @@ -123,34 +123,38 @@ rxvt_term::Draw_button (int x, int y, int state, int dirn) } int -rxvt_term::scrollbar_show_rxvt (int update __attribute__ ((unused)), int last_top, int last_bot, int scrollbar_len) +rxvt_term::scrollbar_show_rxvt (int update, int last_top, int last_bot, int scrollbar_len) { - int sbshadow = sb_shadow; - int sbwidth = (int)scrollBar.width; + int sbshadow = sb_shadow; + int sbwidth = (int)scrollBar.width; if ((scrollBar.init & R_SB_RXVT) == 0) { scrollBar.init |= R_SB_RXVT; if (sbshadow) { - XSetWindowBackground (display->display, scrollBar.win, pix_colors[Color_trough]); + XSetWindowBackground (display->display, scrollBar.win, pix_colors_focused[Color_trough]); XClearWindow (display->display, scrollBar.win); } } else { - /* instead of XClearWindow (display->display, scrollBar.win); */ - if (last_top < scrollBar.top) - XClearArea (display->display, scrollBar.win, - sbshadow, last_top, - sbwidth, (scrollBar.top - last_top), - False); - - if (scrollBar.bot < last_bot) - XClearArea (display->display, scrollBar.win, - sbshadow, scrollBar.bot, - sbwidth, (last_bot - scrollBar.bot), - False); + if (update) + { + if (last_top < scrollBar.top) + XClearArea (display->display, scrollBar.win, + sbshadow, last_top, + sbwidth, (scrollBar.top - last_top), + False); + + if (scrollBar.bot < last_bot) + XClearArea (display->display, scrollBar.win, + sbshadow, scrollBar.bot, + sbwidth, (last_bot - scrollBar.bot), + False); + } + else + XClearWindow (display->display, scrollBar.win); } /* scrollbar slider */ diff --git a/src/scrollbar-xterm.C b/src/scrollbar-xterm.C index 366963b1..ae63e805 100644 --- a/src/scrollbar-xterm.C +++ b/src/scrollbar-xterm.C @@ -32,10 +32,10 @@ const unsigned char x_stp_bits[] = { 0xaa, 0x55 }; int -rxvt_term::scrollbar_show_xterm (int update __attribute__ ((unused)), int last_top, int last_bot, int scrollbar_len) +rxvt_term::scrollbar_show_xterm (int update, int last_top, int last_bot, int scrollbar_len) { - int xsb = 0; - int sbwidth = scrollBar.width - 1; + int xsb = 0; + int sbwidth = scrollBar.width - 1; if ((scrollBar.init & R_SB_XTERM) == 0) { @@ -49,26 +49,31 @@ rxvt_term::scrollbar_show_xterm (int update __attribute__ ((unused)), int last_t rxvt_fatal ("can't create bitmap\n"); gcvalue.fill_style = FillOpaqueStippled; - gcvalue.foreground = pix_colors[Color_fg]; - gcvalue.background = pix_colors[Color_bg]; + gcvalue.foreground = pix_colors_focused[Color_fg]; + gcvalue.background = pix_colors_focused[Color_bg]; xscrollbarGC = XCreateGC (display->display, scrollBar.win, GCForeground | GCBackground | GCFillStyle | GCStipple, &gcvalue); - gcvalue.foreground = pix_colors[Color_border]; + gcvalue.foreground = pix_colors_focused[Color_border]; ShadowGC = XCreateGC (display->display, scrollBar.win, GCForeground, &gcvalue); } - /* instead of XClearWindow (display->display, scrollBar.win); */ - xsb = (options & Opt_scrollBar_right) ? 1 : 0; - if (last_top < scrollBar.top) - XClearArea (display->display, scrollBar.win, - sb_shadow + xsb, last_top, - sbwidth, (scrollBar.top - last_top), False); - if (scrollBar.bot < last_bot) - XClearArea (display->display, scrollBar.win, - sb_shadow + xsb, scrollBar.bot, - sbwidth, (last_bot - scrollBar.bot), False); + if (update) + { + xsb = (options & Opt_scrollBar_right) ? 1 : 0; + if (last_top < scrollBar.top) + XClearArea (display->display, scrollBar.win, + sb_shadow + xsb, last_top, + sbwidth, (scrollBar.top - last_top), False); + + if (scrollBar.bot < last_bot) + XClearArea (display->display, scrollBar.win, + sb_shadow + xsb, scrollBar.bot, + sbwidth, (last_bot - scrollBar.bot), False); + } + else + XClearWindow (display->display, scrollBar.win); /* scrollbar slider */ XFillRectangle (display->display, scrollBar.win, xscrollbarGC, -- 2.34.1