… | |
… | |
975 | rxvt_term::flush () |
975 | rxvt_term::flush () |
976 | { |
976 | { |
977 | flush_ev.stop (); |
977 | flush_ev.stop (); |
978 | |
978 | |
979 | #ifdef HAVE_BG_PIXMAP |
979 | #ifdef HAVE_BG_PIXMAP |
980 | if (bg_flags & hasChanged) |
980 | if (bg_flags & BG_NEEDS_REFRESH) |
981 | { |
981 | { |
982 | bg_flags &= ~hasChanged; |
982 | bg_flags &= ~BG_NEEDS_REFRESH; |
983 | scr_touch (false); |
983 | scr_touch (false); |
984 | } |
984 | } |
985 | #endif |
985 | #endif |
986 | |
986 | |
987 | if (want_refresh) |
987 | if (want_refresh) |
… | |
… | |
1464 | } |
1464 | } |
1465 | else |
1465 | else |
1466 | get_window_origin (x, y); |
1466 | get_window_origin (x, y); |
1467 | |
1467 | |
1468 | if (bg_set_position (x, y) |
1468 | if (bg_set_position (x, y) |
1469 | || !(bg_flags & isValid)) |
1469 | || !(bg_flags & BG_IS_VALID)) |
1470 | moved = true; |
1470 | moved = true; |
1471 | } |
1471 | } |
1472 | #endif |
1472 | #endif |
1473 | |
1473 | |
1474 | if (szHint.width != ev.xconfigure.width || szHint.height != ev.xconfigure.height) |
1474 | if (szHint.width != ev.xconfigure.width || szHint.height != ev.xconfigure.height) |
… | |
… | |
1526 | * by scheduling background redraw as soon as we can, but giving a short |
1526 | * by scheduling background redraw as soon as we can, but giving a short |
1527 | * bit of time for ConfigureNotifies to arrive. |
1527 | * bit of time for ConfigureNotifies to arrive. |
1528 | * We should render background PRIOR to drawing any text, but AFTER all |
1528 | * We should render background PRIOR to drawing any text, but AFTER all |
1529 | * of ConfigureNotifys for the best results. |
1529 | * of ConfigureNotifys for the best results. |
1530 | */ |
1530 | */ |
1531 | if (!(bg_flags & isValid)) |
1531 | if (!(bg_flags & BG_IS_VALID)) |
1532 | update_background_ev.start (0.025); |
1532 | update_background_ev.start (0.025); |
1533 | #endif |
1533 | #endif |
1534 | mapped = 1; |
1534 | mapped = 1; |
1535 | #ifdef TEXT_BLINK |
1535 | #ifdef TEXT_BLINK |
1536 | text_blink_ev.start (); |
1536 | text_blink_ev.start (); |
… | |
… | |
1551 | if (ev.xany.window == vt) |
1551 | if (ev.xany.window == vt) |
1552 | { |
1552 | { |
1553 | do |
1553 | do |
1554 | { |
1554 | { |
1555 | scr_expose (ev.xexpose.x, ev.xexpose.y, |
1555 | scr_expose (ev.xexpose.x, ev.xexpose.y, |
1556 | ev.xexpose.width, ev.xexpose.height, False); |
1556 | ev.xexpose.width, ev.xexpose.height, false); |
1557 | } |
1557 | } |
1558 | while (XCheckTypedWindowEvent (dpy, vt, ev.xany.type, &ev)); |
1558 | while (XCheckTypedWindowEvent (dpy, vt, ev.xany.type, &ev)); |
1559 | |
1559 | |
1560 | ev.xany.type = ev.xany.type == Expose ? GraphicsExpose : Expose; |
1560 | ev.xany.type = ev.xany.type == Expose ? GraphicsExpose : Expose; |
1561 | |
1561 | |
1562 | while (XCheckTypedWindowEvent (dpy, vt, ev.xany.type, &ev)) |
1562 | while (XCheckTypedWindowEvent (dpy, vt, ev.xany.type, &ev)) |
1563 | { |
1563 | { |
1564 | scr_expose (ev.xexpose.x, ev.xexpose.y, |
1564 | scr_expose (ev.xexpose.x, ev.xexpose.y, |
1565 | ev.xexpose.width, ev.xexpose.height, False); |
1565 | ev.xexpose.width, ev.xexpose.height, false); |
1566 | } |
1566 | } |
1567 | |
1567 | |
1568 | want_refresh = 1; |
1568 | want_refresh = 1; |
1569 | } |
1569 | } |
1570 | else |
1570 | else |