diff --git a/briar-gtk/briar_gtk/private_chat/private_chat_presenter.py b/briar-gtk/briar_gtk/private_chat/private_chat_presenter.py index 53f7e3f8cf179f8cf6b529d5ea440ee05ec49a68..34b49bc0629294f6d6aee2eb15df7356cbe54f99 100644 --- a/briar-gtk/briar_gtk/private_chat/private_chat_presenter.py +++ b/briar-gtk/briar_gtk/private_chat/private_chat_presenter.py @@ -201,7 +201,7 @@ class PrivateChatPresenter: self._vscrollbar_min_height = vscollbar.get_preferred_height()[0] vadjustment = chat_input_scroll.get_vadjustment() - vadjustment.connect_after("notify", self._on_upper_notify) + vadjustment.connect_after("notify::upper", self._on_upper_notify) # pylint: disable=unused-argument, line-too-long def _on_upper_notify(self, g_object, param_spec): @@ -210,7 +210,7 @@ class PrivateChatPresenter: """ chat_input_scroll = self._view.builder.get_object("chat_input_scroll") vadjustment = chat_input_scroll.get_vadjustment() - vadjustment.value = vadjustment.get_upper() - vadjustment.get_page_size() # noqa + vadjustment.set_value(vadjustment.get_upper() - vadjustment.get_page_size()) # noqa # Hack for vscrollbar not requiring space and making TextView higher vscollbar = chat_input_scroll.get_vscrollbar() @@ -272,7 +272,8 @@ class PrivateChatPresenter: # Shift is not pressed if (event.state & Gdk.ModifierType.SHIFT_MASK) == \ Gdk.ModifierType.SHIFT_MASK: - return False + widget.get_buffer().insert_at_cursor("\n", 1) + return True # Text does not only contain whitespace if len(self._get_text_from_text_view(widget).strip()) == 0: return False