aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPřemysl Janouch <p.janouch@gmail.com>2016-01-15 05:08:54 +0100
committerPřemysl Janouch <p.janouch@gmail.com>2016-01-15 05:12:03 +0100
commitd0db1a6cdc7081af1de58683ed38f8aace267375 (patch)
tree59222fc602a934eec7d394f56e0606552f1cfb0f
parent9333081178b825f89d81277b57ed2971039f0ce0 (diff)
downloadxK-d0db1a6cdc7081af1de58683ed38f8aace267375.tar.gz
xK-d0db1a6cdc7081af1de58683ed38f8aace267375.tar.xz
xK-d0db1a6cdc7081af1de58683ed38f8aace267375.zip
degesch: enforce fullscreen buffers
Probably long overdue. Now we actually look like something resembling a regular IRC client.
-rw-r--r--NEWS2
-rw-r--r--degesch.c16
2 files changed, 6 insertions, 12 deletions
diff --git a/NEWS b/NEWS
index dc455df..e481cac 100644
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,8 @@
* Use TLS Server Name Indication when connecting to servers
+ * degesch: now we erase the screen before displaying buffers
+
* degesch: added autocomplete for /topic
* degesch: resolve remote addresses asynchronously
diff --git a/degesch.c b/degesch.c
index bf8ab95..2030647 100644
--- a/degesch.c
+++ b/degesch.c
@@ -1514,7 +1514,6 @@ struct app_context
char *attrs[ATTR_COUNT]; ///< Terminal attributes
bool isolate_buffers; ///< Isolate global/server buffers
bool beep_on_highlight; ///< Beep on highlight
- bool fullscreen_buffers; ///< Buffers take the whole screen
bool logging; ///< Logging to file enabled
bool show_all_prefixes; ///< Show all prefixes before nicks
@@ -1715,7 +1714,6 @@ static void on_config_logging_change (struct config_item *item);
}
TRIVIAL_BOOLEAN_ON_CHANGE (isolate_buffers)
-TRIVIAL_BOOLEAN_ON_CHANGE (fullscreen_buffers)
TRIVIAL_BOOLEAN_ON_CHANGE (beep_on_highlight)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@@ -1876,11 +1874,6 @@ static struct config_schema g_config_behaviour[] =
.type = CONFIG_ITEM_BOOLEAN,
.default_ = "off",
.on_change = on_config_isolate_buffers_change },
- { .name = "fullscreen_buffers",
- .comment = "Space above buffer contents is filled with whitespace",
- .type = CONFIG_ITEM_BOOLEAN,
- .default_ = "off",
- .on_change = on_config_fullscreen_buffers_change },
{ .name = "beep_on_highlight",
.comment = "Beep when highlighted or on a new invisible PM",
.type = CONFIG_ITEM_BOOLEAN,
@@ -3412,11 +3405,11 @@ buffer_print_backlog (struct app_context *ctx, struct buffer *buffer)
// That is, minus the readline prompt
int display_limit = MAX (10, g_terminal.lines - 1);
- terminal_printer_fn printer = get_attribute_printer (stdout);
- if (ctx->fullscreen_buffers)
+ // Simulate curses-like fullscreen buffers if the terminal allows it
+ if (clear_screen)
{
- if (soft_assert (clear_screen))
- tputs (clear_screen, 1, printer);
+ terminal_printer_fn printer = get_attribute_printer (stdout);
+ tputs (clear_screen, 1, printer);
if (cursor_to_ll)
tputs (cursor_to_ll, 1, printer);
else if (row_address)
@@ -3432,7 +3425,6 @@ buffer_print_backlog (struct app_context *ctx, struct buffer *buffer)
iconv_xstrdup (ctx->term_from_utf8, buffer->name, -1, NULL);
print_status ("%s", buffer_name_localized);
free (buffer_name_localized);
- display_limit--;
}
struct buffer_line *line = buffer->lines_tail;