mirror of
https://github.com/weechat/weechat.git
synced 2026-06-22 02:46:38 +02:00
Merge remote-tracking branch 'origin/pr/1311'
This commit is contained in:
@@ -2177,7 +2177,7 @@ COMMAND_CALLBACK(filter)
|
||||
if (!ptr_filter->enabled)
|
||||
{
|
||||
ptr_filter->enabled = 1;
|
||||
gui_filter_all_buffers ();
|
||||
gui_filter_all_buffers (ptr_filter);
|
||||
gui_chat_printf_date_tags (NULL, 0,
|
||||
GUI_FILTER_TAG_NO_FILTER,
|
||||
_("Filter \"%s\" enabled"),
|
||||
@@ -2235,7 +2235,7 @@ COMMAND_CALLBACK(filter)
|
||||
if (ptr_filter->enabled)
|
||||
{
|
||||
ptr_filter->enabled = 0;
|
||||
gui_filter_all_buffers ();
|
||||
gui_filter_all_buffers (ptr_filter);
|
||||
gui_chat_printf_date_tags (NULL, 0,
|
||||
GUI_FILTER_TAG_NO_FILTER,
|
||||
_("Filter \"%s\" disabled"),
|
||||
@@ -2289,7 +2289,7 @@ COMMAND_CALLBACK(filter)
|
||||
if (ptr_filter)
|
||||
{
|
||||
ptr_filter->enabled ^= 1;
|
||||
gui_filter_all_buffers ();
|
||||
gui_filter_all_buffers (ptr_filter);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -2330,7 +2330,7 @@ COMMAND_CALLBACK(filter)
|
||||
argv_eol[5]);
|
||||
if (ptr_filter)
|
||||
{
|
||||
gui_filter_all_buffers ();
|
||||
gui_filter_all_buffers (ptr_filter);
|
||||
gui_chat_printf (NULL, "");
|
||||
gui_chat_printf_date_tags (NULL, 0, GUI_FILTER_TAG_NO_FILTER,
|
||||
_("Filter \"%s\" added:"),
|
||||
@@ -2384,7 +2384,7 @@ COMMAND_CALLBACK(filter)
|
||||
if (gui_filters)
|
||||
{
|
||||
gui_filter_free_all ();
|
||||
gui_filter_all_buffers ();
|
||||
gui_filter_all_buffers (NULL);
|
||||
gui_chat_printf_date_tags (NULL, 0, GUI_FILTER_TAG_NO_FILTER,
|
||||
_("All filters have been deleted"));
|
||||
}
|
||||
@@ -2399,8 +2399,9 @@ COMMAND_CALLBACK(filter)
|
||||
ptr_filter = gui_filter_search_by_name (argv[2]);
|
||||
if (ptr_filter)
|
||||
{
|
||||
ptr_filter->enabled = 0; // disable before refilter
|
||||
gui_filter_all_buffers (ptr_filter); // refilter before free
|
||||
gui_filter_free (ptr_filter);
|
||||
gui_filter_all_buffers ();
|
||||
gui_chat_printf_date_tags (NULL, 0, GUI_FILTER_TAG_NO_FILTER,
|
||||
_("Filter \"%s\" deleted"),
|
||||
argv[2]);
|
||||
|
||||
@@ -1359,7 +1359,7 @@ config_weechat_init_after_read ()
|
||||
}
|
||||
|
||||
/* apply filters on all buffers */
|
||||
gui_filter_all_buffers ();
|
||||
gui_filter_all_buffers (NULL);
|
||||
|
||||
config_change_look_nick_color_force (NULL, NULL, NULL);
|
||||
}
|
||||
|
||||
+13
-4
@@ -186,17 +186,26 @@ gui_filter_buffer (struct t_gui_buffer *buffer,
|
||||
|
||||
/*
|
||||
* Filters all buffers, using message filters.
|
||||
*
|
||||
* If filter is NULL, filters all buffers.
|
||||
* If filter is not NULL, filters only buffers matched by this filter.
|
||||
*/
|
||||
|
||||
void
|
||||
gui_filter_all_buffers ()
|
||||
gui_filter_all_buffers (struct t_gui_filter *filter)
|
||||
{
|
||||
struct t_gui_buffer *ptr_buffer;
|
||||
|
||||
for (ptr_buffer = gui_buffers; ptr_buffer;
|
||||
ptr_buffer = ptr_buffer->next_buffer)
|
||||
{
|
||||
gui_filter_buffer (ptr_buffer, NULL);
|
||||
if (!filter
|
||||
|| gui_buffer_match_list_split (ptr_buffer,
|
||||
filter->num_buffers,
|
||||
filter->buffers))
|
||||
{
|
||||
gui_filter_buffer (ptr_buffer, NULL);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -210,7 +219,7 @@ gui_filter_global_enable ()
|
||||
if (!gui_filters_enabled)
|
||||
{
|
||||
gui_filters_enabled = 1;
|
||||
gui_filter_all_buffers ();
|
||||
gui_filter_all_buffers (NULL);
|
||||
(void) hook_signal_send ("filters_enabled",
|
||||
WEECHAT_HOOK_SIGNAL_STRING, NULL);
|
||||
}
|
||||
@@ -226,7 +235,7 @@ gui_filter_global_disable ()
|
||||
if (gui_filters_enabled)
|
||||
{
|
||||
gui_filters_enabled = 0;
|
||||
gui_filter_all_buffers ();
|
||||
gui_filter_all_buffers (NULL);
|
||||
(void) hook_signal_send ("filters_disabled",
|
||||
WEECHAT_HOOK_SIGNAL_STRING, NULL);
|
||||
}
|
||||
|
||||
@@ -56,7 +56,7 @@ extern int gui_filters_enabled;
|
||||
extern int gui_filter_check_line (struct t_gui_line_data *line_data);
|
||||
extern void gui_filter_buffer (struct t_gui_buffer *buffer,
|
||||
struct t_gui_line_data *line_data);
|
||||
extern void gui_filter_all_buffers ();
|
||||
extern void gui_filter_all_buffers (struct t_gui_filter *filter);
|
||||
extern void gui_filter_global_enable ();
|
||||
extern void gui_filter_global_disable ();
|
||||
extern struct t_gui_filter *gui_filter_search_by_name (const char *name);
|
||||
|
||||
Reference in New Issue
Block a user