···11import os
2233import httpx
44-from platformdirs import user_data_dir
54from textual.app import App, ComposeResult
65from textual.binding import Binding
76···109from textual.screen import Screen
1110from textual.widgets import Button, Footer, Static
12111212+from tui.paths import DATA_DIR
1313+from tui.screens.activity import ActivityScreen
1314from tui.screens.home import HomeScreen
1515+from tui.screens.login import LoginScreen
141615171618class LogoutConfirmScreen(Screen):
···4951 self.app.pop_screen()
505251535252-DATA_DIR = os.environ.get("ATBBS_DATA_DIR", user_data_dir("atbbs"))
5353-5454-5554class AtbbsApp(App):
5655 TITLE = "@bbs"
5756 CSS_PATH = "app.tcss"
···9998 if self.user_session:
10099 self.push_screen(LogoutConfirmScreen())
101100 else:
102102- from tui.screens.login import LoginScreen
103103-104101 self.push_screen(LoginScreen())
105102106103 def do_logout(self) -> None:
···116113 if not self.user_session:
117114 self.notify("Log in to see your messages.", severity="warning")
118115 return
119119- from tui.screens.activity import ActivityScreen
120120-121116 self.push_screen(ActivityScreen())
122117123118 def action_refresh(self) -> None:
+7
tui/paths.py
···11+"""Filesystem paths for the TUI."""
22+33+import os
44+55+from platformdirs import user_data_dir
66+77+DATA_DIR = os.environ.get("ATBBS_DATA_DIR", user_data_dir("atbbs"))