Philipp Hörist pushed to branch master at gajim / gajim
Commits:
96274696 by lovetox at 2022-01-29T00:17:21+01:00
PlainWidget: Allow Focus and remove selection when focus is lost
Without focus keybindings like CTRL + C do not work anymore
Remove the selection on losing foucs so users know that they lost focus
- - - - -
1 changed file:
- gajim/gtk/conversation/plain_widget.py
Changes:
=====================================
gajim/gtk/conversation/plain_widget.py
=====================================
@@ -12,6 +12,8 @@
# You should have received a copy of the GNU General Public License
# along with Gajim. If not, see <http://www.gnu.org/licenses/>.
+from __future__ import annotations
+
from typing import Any
import logging
@@ -80,7 +82,6 @@ def __init__(self, account: str, selectable: bool) -> None:
self.set_xalign(0)
self.set_line_wrap_mode(Pango.WrapMode.WORD_CHAR)
self.set_track_visited_links(False)
- self.set_can_focus(False)
self._account = account
@@ -88,6 +89,7 @@ def __init__(self, account: str, selectable: bool) -> None:
self.connect('populate-popup', self._on_populate_popup)
self.connect('activate-link', self._on_activate_link)
+ self.connect('focus-out-event', self._on_focus_out)
def _on_populate_popup(self, label: Gtk.Label, menu: Gtk.Menu) -> None:
selected, start, end = label.get_selection_bounds()
@@ -124,6 +126,11 @@ def _on_activate_link(self, _label: Gtk.Label, uri: str) -> int:
open_uri(uri, self._account)
return Gdk.EVENT_STOP
+ def _on_focus_out(self,
+ widget: MessageLabel,
+ event: Gdk.EventFocus) -> None:
+ self.select_region(0, 0)
+
class MessageTextview(Gtk.TextView):
def __init__(self, account: str) -> None:
View it on GitLab: https://dev.gajim.org/gajim/gajim/-/commit/9627469656960af5858031333fbd3093…
--
View it on GitLab: https://dev.gajim.org/gajim/gajim/-/commit/9627469656960af5858031333fbd3093…
You're receiving this email because of your account on dev.gajim.org.