diff --git a/gajim/chat_control_base.py b/gajim/chat_control_base.py
index b48e8a4fbc8d7bbede653a3b21a717840d3cff14..a8acec6b3d4f3ed19d1ee2cb662bd5a4e6395f22 100644
--- a/gajim/chat_control_base.py
+++ b/gajim/chat_control_base.py
@@ -178,6 +178,16 @@ def __init__(self, parent_win, widget_name, contact, acct,
         self.conv_textview.tv.connect('key-press-event',
                                       self._on_conv_textview_key_press_event)
 
+        # This is a workaround: as soon as a line break occurs in Gtk.TextView
+        # with word-char wrapping enabled, a hyphen character is automatically
+        # inserted before the line break. This triggers the hscrollbar to show,
+        # see: https://gitlab.gnome.org/GNOME/gtk/-/issues/2384
+        # Using set_hscroll_policy(Gtk.Scrollable.Policy.NEVER) would cause bad
+        # performance during resize, and prevent the window from being shrinked
+        # horizontally under certain conditions (applies to GroupchatControl)
+        hscrollbar = self.xml.conversation_scrolledwindow.get_hscrollbar()
+        hscrollbar.hide()
+
         self.xml.conversation_scrolledwindow.add(self.conv_textview.tv)
         widget = self.xml.conversation_scrolledwindow.get_vadjustment()
         widget.connect('changed', self.on_conversation_vadjustment_changed)
diff --git a/gajim/data/gui/chat_control.ui b/gajim/data/gui/chat_control.ui
index 9932a71ae8c2e796738e8003e8aa80c54e755009..f47c1419027d016cf993d7adf507c57f0b8654fc 100644
--- a/gajim/data/gui/chat_control.ui
+++ b/gajim/data/gui/chat_control.ui
@@ -621,7 +621,6 @@
                   <object class="GtkScrolledWindow" id="conversation_scrolledwindow">
                     <property name="height_request">60</property>
                     <property name="can_focus">True</property>
-                    <property name="hscrollbar_policy">never</property>
                     <property name="shadow_type">in</property>
                     <property name="overlay_scrolling">False</property>
                     <signal name="edge-reached" handler="_on_edge_reached" swapped="no"/>
diff --git a/gajim/data/gui/groupchat_control.ui b/gajim/data/gui/groupchat_control.ui
index f222953dd74b47ed90d616be92a42d26997b6f48..f42f8d2f7d371e5e61bd3b05db761d85f6b82dc0 100644
--- a/gajim/data/gui/groupchat_control.ui
+++ b/gajim/data/gui/groupchat_control.ui
@@ -261,7 +261,6 @@
                         <property name="height_request">60</property>
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <property name="hscrollbar_policy">never</property>
                         <property name="shadow_type">in</property>
                         <property name="overlay_scrolling">False</property>
                         <signal name="edge-reached" handler="_on_edge_reached" swapped="no"/>