diff options
author | Nicholas Marriott <nicholas.marriott@gmail.com> | 2008-06-04 19:20:10 +0000 |
---|---|---|
committer | Nicholas Marriott <nicholas.marriott@gmail.com> | 2008-06-04 19:20:10 +0000 |
commit | 7842d2967383f119dbbcc3967caebee5407e939b (patch) | |
tree | fa359e0b2727671e24eeb89a29667d92dac01430 | |
parent | 39be570b2079c38609ae6cc6c6e2bf937649d481 (diff) | |
download | rtmux-7842d2967383f119dbbcc3967caebee5407e939b.tar.gz rtmux-7842d2967383f119dbbcc3967caebee5407e939b.tar.bz2 rtmux-7842d2967383f119dbbcc3967caebee5407e939b.zip |
Revert attempt to fix stray updates, turns out it was clock :-/.
-rw-r--r-- | TODO | 5 | ||||
-rw-r--r-- | input.c | 7 | ||||
-rw-r--r-- | screen-display.c | 10 | ||||
-rw-r--r-- | screen-write.c | 16 | ||||
-rw-r--r-- | tmux.h | 6 |
5 files changed, 14 insertions, 30 deletions
@@ -64,6 +64,7 @@ - different screen model? layers perhaps? hmm - cfg file improvements - proper per-window options (per-session list of window ranges?) +- better work on modes: search, back word, forward word, etc --- [18:20] *priteau* i found something in tmux that could be tweaked to be better @@ -76,9 +77,9 @@ - chmod +x socket when any client is attached (upd in lost/accept) - clear EOL etc CANNOT rely on term using the current colour/attr and probably should not emulate it doing so -- status bar customisation variables, date/time, show-activity, show-last-window - string-left, string-right - pass through strptime and print... +- status bar customisation variables, show-activity, show-last-window - show-options - let server die when last session does - each command should have a print op as well for list keys - fix occasion start server problems +- test and fix wsvt25 @@ -1,4 +1,4 @@ -/* $Id: input.c,v 1.48 2008-06-04 18:50:34 nicm Exp $ */ +/* $Id: input.c,v 1.49 2008-06-04 19:20:09 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net> @@ -223,6 +223,8 @@ input_parse(struct window *w) else screen_write_start(&ictx->ctx, &w->base, NULL, NULL); + if (ictx->off != ictx->len) + w->flags |= WINDOW_ACTIVITY; while (ictx->off < ictx->len) { ch = ictx->buf[ictx->off++]; ictx->state(ch, ictx); @@ -481,8 +483,7 @@ input_handle_character(u_char ch, struct input_ctx *ictx) { log_debug2("-- ch %zu: %hhu (%c)", ictx->off, ch, ch); - if (screen_write_put_character(&ictx->ctx, ch)) - ictx->w->flags |= WINDOW_ACTIVITY; + screen_write_put_character(&ictx->ctx, ch); } void diff --git a/screen-display.c b/screen-display.c index e433c883..73995cda 100644 --- a/screen-display.c +++ b/screen-display.c @@ -1,4 +1,4 @@ -/* $Id: screen-display.c,v 1.15 2008-06-04 18:50:34 nicm Exp $ */ +/* $Id: screen-display.c,v 1.16 2008-06-04 19:20:09 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net> @@ -22,14 +22,6 @@ #include "tmux.h" -/* Get a cell. */ -void -screen_display_get_cell(struct screen *s, - u_int px, u_int py, u_char *data, u_char *attr, u_char *colr) -{ - screen_get_cell(s, screen_x(s, px), screen_y(s, py), data, attr, colr); -} - /* Set a cell. */ void screen_display_set_cell( diff --git a/screen-write.c b/screen-write.c index 01b749ab..f0696e02 100644 --- a/screen-write.c +++ b/screen-write.c @@ -1,4 +1,4 @@ -/* $Id: screen-write.c,v 1.6 2008-06-04 18:50:34 nicm Exp $ */ +/* $Id: screen-write.c,v 1.7 2008-06-04 19:20:09 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net> @@ -98,12 +98,10 @@ screen_write_set_title(struct screen_write_ctx *ctx, char *title) } /* Put a character. */ -int +void screen_write_put_character(struct screen_write_ctx *ctx, u_char ch) { struct screen *s = ctx->s; - u_char data, attr, colr; - int n; if (s->cx == screen_size_x(s)) { s->cx = 0; @@ -112,20 +110,14 @@ screen_write_put_character(struct screen_write_ctx *ctx, u_char ch) screen_write_cursor_down_scroll(ctx); } else if (!screen_in_x(s, s->cx) || !screen_in_y(s, s->cy)) { SCREEN_DEBUG(s); - return (0); + return; } - screen_display_get_cell(s, s->cx, s->cy, &data, &attr, &colr); - if (ch != data || s->attr != attr || colr != s->colr) { - screen_display_set_cell(s, s->cx, s->cy, ch, s->attr, s->colr); - n = 1; - } else - n = 0; + screen_display_set_cell(s, s->cx, s->cy, ch, s->attr, s->colr); s->cx++; if (ctx->write != NULL) ctx->write(ctx->data, TTY_CHARACTER, ch); - return (n); } /* Put a string right-justified. */ @@ -1,4 +1,4 @@ -/* $Id: tmux.h,v 1.130 2008-06-04 18:50:35 nicm Exp $ */ +/* $Id: tmux.h,v 1.131 2008-06-04 19:20:10 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net> @@ -919,8 +919,6 @@ void input_parse(struct window *); void input_key(struct window *, int); /* screen-display.c */ -void screen_display_get_cell( - struct screen *, u_int, u_int, u_char *, u_char *, u_char *); void screen_display_set_cell( struct screen *, u_int, u_int, u_char, u_char, u_char); void screen_display_make_lines(struct screen *, u_int, u_int); @@ -948,7 +946,7 @@ void screen_write_start(struct screen_write_ctx *, struct screen *, void (*)(void *, int, ...), void *); void screen_write_stop(struct screen_write_ctx *); void screen_write_set_title(struct screen_write_ctx *, char *); -int screen_write_put_character(struct screen_write_ctx *, u_char); +void screen_write_put_character(struct screen_write_ctx *, u_char); size_t printflike2 screen_write_put_string_rjust( struct screen_write_ctx *, const char *, ...); void printflike2 screen_write_put_string( |