1
0
mirror of https://github.com/weechat/weechat.git synced 2026-07-02 07:46:38 +02:00

Fix hotlist bug after /buffer unmerge (bug #27133)

This commit is contained in:
Sebastien Helleu
2009-07-29 10:38:45 +02:00
parent ffdba5b248
commit 7d25b62665
2 changed files with 31 additions and 3 deletions
+29 -1
View File
@@ -1122,6 +1122,30 @@ gui_buffer_set_pointer (struct t_gui_buffer *buffer, const char *property,
}
}
/*
* gui_buffer_compute_num_displayed: compute "num_displayed" for all buffers
*/
void
gui_buffer_compute_num_displayed ()
{
struct t_gui_buffer *ptr_buffer;
struct t_gui_window *ptr_window;
for (ptr_buffer = gui_buffers; ptr_buffer;
ptr_buffer = ptr_buffer->next_buffer)
{
ptr_buffer->num_displayed = 0;
}
for (ptr_window = gui_windows; ptr_window;
ptr_window = ptr_window->next_window)
{
if (ptr_window->buffer)
ptr_window->buffer->num_displayed++;
}
}
/*
* gui_buffer_add_value_num_displayed: add value to "num_displayed" variable
* for a buffer (value can be negative)
@@ -1449,7 +1473,7 @@ gui_buffer_close (struct t_gui_buffer *buffer)
{
(void)(buffer->close_callback) (buffer->close_callback_data, buffer);
}
/* first unmerge buffer if it is merged to at least one other buffer */
if (gui_buffer_count_merged_buffers (buffer->number) > 1)
gui_buffer_unmerge (buffer, -1);
@@ -1839,6 +1863,8 @@ gui_buffer_merge (struct t_gui_buffer *buffer,
ptr_buffer->number--;
}
gui_buffer_compute_num_displayed ();
gui_window_ask_refresh (1);
hook_signal_send ("buffer_merged",
@@ -1949,6 +1975,8 @@ gui_buffer_unmerge (struct t_gui_buffer *buffer, int number)
ptr_buffer->number++;
}
gui_buffer_compute_num_displayed ();
gui_window_ask_refresh (1);
hook_signal_send ("buffer_unmerged",
+2 -2
View File
@@ -1067,8 +1067,8 @@ gui_lines_print_log (struct t_gui_lines *lines)
log_printf (" first_line . . . . . : 0x%lx", lines->first_line);
log_printf (" last_line. . . . . . : 0x%lx", lines->last_line);
log_printf (" last_read_line . . . : 0x%lx", lines->last_read_line);
log_printf (" lines_count. . . . . . : %d", lines->lines_count);
log_printf (" first_line_not_read. . : %d", lines->first_line_not_read);
log_printf (" lines_count. . . . . : %d", lines->lines_count);
log_printf (" first_line_not_read. : %d", lines->first_line_not_read);
log_printf (" lines_hidden . . . . : %d", lines->lines_hidden);
log_printf (" buffer_max_length. . : %d", lines->buffer_max_length);
log_printf (" prefix_max_length. . : %d", lines->prefix_max_length);