From d7100d7e0a419d52884fb931616153954b07bb61 Mon Sep 17 00:00:00 2001 From: dkobylianskii Date: Mon, 21 Jul 2025 12:03:40 +0300 Subject: [PATCH 1/2] Fix theme switching for the plot widget --- src/uproot_browser/tui/browser.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/uproot_browser/tui/browser.py b/src/uproot_browser/tui/browser.py index 27500d3..bd8bee9 100644 --- a/src/uproot_browser/tui/browser.py +++ b/src/uproot_browser/tui/browser.py @@ -139,7 +139,7 @@ def action_toggle_theme(self) -> None: theme = "textual-light" if dark else "textual-dark" if self.plot_widget.item: - self.plot_widget.item.theme = "dark" if dark else "default" + self.plot_widget.item.theme = "default" if dark else "dark" self.theme = theme def on_uproot_selected(self, message: UprootSelected) -> None: From 8246e84e134f25c688f3cf9a51e93af7b0e5f0df Mon Sep 17 00:00:00 2001 From: dkobylianskii Date: Mon, 21 Jul 2025 12:12:33 +0300 Subject: [PATCH 2/2] Add test for theme switching --- tests/test_tui.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/tests/test_tui.py b/tests/test_tui.py index d235adb..26ba2bf 100644 --- a/tests/test_tui.py +++ b/tests/test_tui.py @@ -18,6 +18,20 @@ async def test_browse_plot() -> None: assert pilot.app.query_one("#main-view").current == "plot" +async def test_theme_switch() -> None: + async with Browser( + skhep_testdata.data_path("uproot-Event.root") + ).run_test() as pilot: + await pilot.press("down", "down", "down", "enter") + browser_theme = pilot.app.theme + plot_theme = pilot.app.theme + await pilot.press("t") + new_browser_theme = pilot.app.theme + new_plot_theme = pilot.app.theme + assert browser_theme != new_browser_theme + assert plot_theme != new_plot_theme + + async def test_browse_empty() -> None: async with Browser( skhep_testdata.data_path("uproot-empty.root")