Fix SessionListDialog behavior and document PersistentStorageDialog bug

- Fix SessionListDialog to not reload when user selects a session after deleting others
  - Track if dialog closed via selection vs other means
  - Only call delete callback if not closed via selection
  - Batch deletions to avoid reload on every delete
- Comment out PersistentStorageDialog in both web-ui example and browser extension (TODO: fix)
- Add Known Bugs section to both README.md files documenting PersistentStorageDialog issue
- Clean up navigation tracking variable names in browser extension
This commit is contained in:
Mario Zechner 2025-10-06 16:33:33 +02:00
parent 2d68594711
commit 5f04960f6d
5 changed files with 94 additions and 25 deletions

View file

@ -9,7 +9,7 @@ import {
type AppMessage,
AppStorage,
ChatPanel,
PersistentStorageDialog,
// PersistentStorageDialog, // TODO: Fix - currently broken
ProviderTransport,
ProxyTab,
SessionIndexedDBBackend,
@ -192,7 +192,7 @@ const renderApp = () => {
await loadSession(sessionId);
},
(deletedSessionId) => {
// If the deleted session is the current one, start a new session
// Only reload if the current session was deleted
if (deletedSessionId === currentSessionId) {
newSession();
}
@ -311,10 +311,11 @@ async function initApp() {
app,
);
// TODO: Fix PersistentStorageDialog - currently broken
// Request persistent storage
if (storage.sessions) {
await PersistentStorageDialog.request();
}
// if (storage.sessions) {
// await PersistentStorageDialog.request();
// }
// Create ChatPanel
chatPanel = new ChatPanel();