summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--data/default_config.cfg5
-rw-r--r--doc/source/configuration.rst11
-rw-r--r--poezio/config.py1
-rw-r--r--poezio/core/core.py6
4 files changed, 22 insertions, 1 deletions
diff --git a/data/default_config.cfg b/data/default_config.cfg
index 36edf147..96472f49 100644
--- a/data/default_config.cfg
+++ b/data/default_config.cfg
@@ -198,6 +198,11 @@ use_bookmarks_method =
# Possible values; error, roster, warning, info, help
#information_buffer_popup_on = error roster warning help info
+# A list of message types separated by colons (":") that should be filtered out from the
+# information buffer.
+# Possible values; error, roster, warning, info, help
+#information_buffer_type_filter =
+
# The time the message will be visible. If the message takes more than
# one line, the popup will stay visible two second per additional lines
#popup_time = 4
diff --git a/doc/source/configuration.rst b/doc/source/configuration.rst
index 2d5761b8..8d88a071 100644
--- a/doc/source/configuration.rst
+++ b/doc/source/configuration.rst
@@ -627,6 +627,17 @@ or the way messages are displayed.
A list of message types that should make the information buffer grow
Possible values: ``error``, ``roster``, ``warning``, ``info``, ``help``
+ information_popup_type_filter
+
+ **Default value:** ``[empty]``
+
+ Some informational messages (error, a contact getting connected, etc)
+ are sometimes added to the information buffer.
+
+ A list of message types separated by colons (":") that should never be displayed in the information
+ buffer.
+ Possible values: ``error``, ``roster``, ``warning``, ``info``, ``help``
+
display_user_color_in_join_part
**Default value:** ``true``
diff --git a/poezio/config.py b/poezio/config.py
index f2002382..ade9f740 100644
--- a/poezio/config.py
+++ b/poezio/config.py
@@ -74,6 +74,7 @@ DEFAULT_CONFIG = {
'ignore_certificate': False,
'ignore_private': False,
'information_buffer_popup_on': 'error roster warning help info',
+ 'information_buffer_type_filter': '',
'jid': '',
'keyfile': '',
'lang': 'en',
diff --git a/poezio/core/core.py b/poezio/core/core.py
index f2341ba3..35d50b65 100644
--- a/poezio/core/core.py
+++ b/poezio/core/core.py
@@ -1405,10 +1405,14 @@ class Core(object):
"""
Displays an informational message in the "Info" buffer
"""
+ filter_types = config.get('information_buffer_type_filter').split(':')
+ if typ.lower() in filter_types:
+ log.debug('Did not show the message:\n\t%s> %s \n\tdue to information_popup_type_filter configuration', typ, msg)
+ return False
filter_messages = config.get('filter_info_messages').split(':')
for words in filter_messages:
if words and words in msg:
- log.debug('Did not show the message:\n\t%s> %s', typ, msg)
+ log.debug('Did not show the message:\n\t%s> %s \n\tdue to filter_info_messages configuration', typ, msg)
return False
colors = get_theme().INFO_COLORS
color = colors.get(typ.lower(), colors.get('default', None))