Revision: 2730
          http://tmux.svn.sourceforge.net/tmux/?rev=2730&view=rev
Author:   tcunha
Date:     2012-03-18 01:46:37 +0000 (Sun, 18 Mar 2012)
Log Message:
-----------
Sync OpenBSD patchset 1051:

Add a helper function for enabling an optimization to make some code
clearer.

Modified Paths:
--------------
    trunk/tty.c

Modified: trunk/tty.c
===================================================================
--- trunk/tty.c 2012-03-18 01:40:26 UTC (rev 2729)
+++ trunk/tty.c 2012-03-18 01:46:37 UTC (rev 2730)
@@ -502,6 +502,19 @@
 }
 
 /*
+ * Is the region large enough to be worth redrawing once later rather than
+ * probably several times now? Currently yes if it is more than 50% of the
+ * pane.
+ */
+int
+tty_large_region(unused struct tty *tty, const struct tty_ctx *ctx)
+{
+       struct window_pane      *wp = ctx->wp;
+
+       return (ctx->orlower - ctx->orupper >= screen_size_y(wp->screen) / 2);
+}
+
+/*
  * Redraw scroll region using data from screen (already updated). Used when
  * CSR not supported, or window is a pane that doesn't take up the full
  * width of the terminal.
@@ -514,12 +527,10 @@
        u_int                    i;
 
        /*
-        * If region is >= 50% of the screen, just schedule a window redraw. In
-        * most cases, this is likely to be followed by some more scrolling -
-        * without this, the entire pane ends up being redrawn many times which
-        * can be much more data.
+        * If region is large, schedule a window redraw. In most cases this is
+        * likely to be followed by some more scrolling.
         */
-       if (ctx->orlower - ctx->orupper >= screen_size_y(s) / 2) {
+       if (tty_large_region(tty, ctx)) {
                wp->flags |= PANE_REDRAW;
                return;
        }

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
_______________________________________________
tmux-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tmux-cvs

Reply via email to