From bc92e722655b9d19079f6c441bd99532e53db1a6 Mon Sep 17 00:00:00 2001 From: Anna Schumaker Date: Sun, 25 Jun 2023 21:53:02 -0400 Subject: [PATCH] sidebar: Give the Header an activate() function Signed-off-by: Anna Schumaker --- emmental/sidebar/header.py | 10 +++++----- tests/sidebar/test_header.py | 6 ++++++ 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/emmental/sidebar/header.py b/emmental/sidebar/header.py index 6b0ab3d..75862bc 100644 --- a/emmental/sidebar/header.py +++ b/emmental/sidebar/header.py @@ -55,7 +55,7 @@ class Header(Gtk.Box): self.bind_property("reveal-widget", self._revealer, "child") self.bind_property("animation", self._revealer, "transition-type") - self._clicked.connect("released", self.__clicked) + self._clicked.connect("released", self.activate) self.connect("notify::active", self.__notify_active) self._box.append(self._icon) @@ -70,12 +70,12 @@ class Header(Gtk.Box): self.append(self._overlay) self.append(self._revealer) - def __clicked(self, gesture: Gtk.GestureClick, n_press: int, - x: int, y: int) -> None: - self.active = True - def __notify_active(self, header, param) -> None: if self.active: self._arrow.set_state_flags(Gtk.StateFlags.CHECKED, False) else: self._arrow.unset_state_flags(Gtk.StateFlags.CHECKED) + + def activate(self, *args) -> None: + """Activate the Header.""" + self.active = True diff --git a/tests/sidebar/test_header.py b/tests/sidebar/test_header.py index 117c667..a65330b 100644 --- a/tests/sidebar/test_header.py +++ b/tests/sidebar/test_header.py @@ -165,3 +165,9 @@ class TestHeader(unittest.TestCase): self.assertTrue(self.header.active) flags = self.header._arrow.get_state_flags() self.assertTrue(flags & Gtk.StateFlags.CHECKED) + + def test_activate(self): + """Test the activate() function.""" + self.assertFalse(self.header.active) + self.header.activate() + self.assertTrue(self.header.active)