From 585681e5a075abf07fb465ac8865a4f210bbd1cb Mon Sep 17 00:00:00 2001 From: Sebastien Helleu Date: Sun, 1 Jul 2007 11:20:34 +0000 Subject: [PATCH] Down key now saves input to history and clears input line (task #7049) --- ChangeLog | 3 ++- src/gui/gui-action.c | 17 +++++++++++++++++ weechat/ChangeLog | 3 ++- weechat/src/gui/gui-action.c | 17 +++++++++++++++++ 4 files changed, 38 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index ebdfee283..e75565402 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,10 +1,11 @@ WeeChat - Wee Enhanced Environment for Chat =========================================== -ChangeLog - 2007-06-12 +ChangeLog - 2007-07-01 Version 0.2.6 (under dev!): + * down key now saves input to history and clears input line (task #7049) * fixed log file when channel name contains "/" (bug #20072) * command /away allowed when not connected to server (internally stored and AWAY command is sent when connecting to server) (task #7003) diff --git a/src/gui/gui-action.c b/src/gui/gui-action.c index 9e4c85328..0db9e7ffd 100644 --- a/src/gui/gui-action.c +++ b/src/gui/gui-action.c @@ -859,6 +859,23 @@ gui_action_down (t_gui_window *window, char *args) } gui_input_draw (window->buffer, 0); } + else + { + /* add line to history then clear input */ + if (window->buffer->input_buffer_size > 0) + { + window->buffer->input_buffer[window->buffer->input_buffer_size] = '\0'; + window->buffer->input_buffer_color_mask[window->buffer->input_buffer_size] = '\0'; + history_buffer_add (window->buffer, window->buffer->input_buffer); + history_global_add (window->buffer->input_buffer); + window->buffer->input_buffer_size = 0; + window->buffer->input_buffer_length = 0; + gui_input_optimize_size (window->buffer); + window->buffer->input_buffer_pos = 0; + window->buffer->input_buffer_1st_display = 0; + gui_input_draw (window->buffer, 0); + } + } } else { diff --git a/weechat/ChangeLog b/weechat/ChangeLog index ebdfee283..e75565402 100644 --- a/weechat/ChangeLog +++ b/weechat/ChangeLog @@ -1,10 +1,11 @@ WeeChat - Wee Enhanced Environment for Chat =========================================== -ChangeLog - 2007-06-12 +ChangeLog - 2007-07-01 Version 0.2.6 (under dev!): + * down key now saves input to history and clears input line (task #7049) * fixed log file when channel name contains "/" (bug #20072) * command /away allowed when not connected to server (internally stored and AWAY command is sent when connecting to server) (task #7003) diff --git a/weechat/src/gui/gui-action.c b/weechat/src/gui/gui-action.c index 9e4c85328..0db9e7ffd 100644 --- a/weechat/src/gui/gui-action.c +++ b/weechat/src/gui/gui-action.c @@ -859,6 +859,23 @@ gui_action_down (t_gui_window *window, char *args) } gui_input_draw (window->buffer, 0); } + else + { + /* add line to history then clear input */ + if (window->buffer->input_buffer_size > 0) + { + window->buffer->input_buffer[window->buffer->input_buffer_size] = '\0'; + window->buffer->input_buffer_color_mask[window->buffer->input_buffer_size] = '\0'; + history_buffer_add (window->buffer, window->buffer->input_buffer); + history_global_add (window->buffer->input_buffer); + window->buffer->input_buffer_size = 0; + window->buffer->input_buffer_length = 0; + gui_input_optimize_size (window->buffer); + window->buffer->input_buffer_pos = 0; + window->buffer->input_buffer_1st_display = 0; + gui_input_draw (window->buffer, 0); + } + } } else {