Dashboard and Search Improvements #6
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/dashboard-search-improvements"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Fixes
5. DashboardPanel uses correct section query context
Previously
open_current_thread()always usedself.queries[0][1](the first section's query) regardless of which section the selected thread belongs to. Now looks up the correct section header for the row and uses its associatedSearchModel.q. This fixes search-highlighting in thread view for non-first dashboard sections.6. Dashboard refresh debouncing
Full dashboard refreshes spawn N
notmuch searchcalls (one per section). On rapid tag changes, this could queue dozens of redundant subprocess calls. Added a 500ms debounce timer viaupdate_thread()so refreshes coalesce.9. SearchPanel selection restoration by thread ID
SearchPanel.refresh()previously saved the current row number and tried to restore it after model reset. If threads were deleted or added, the row could point to a different thread. Now restores bythread_idlookup inmodel.threadsdict, with fallback to first row.Removed the now-unused
snapshot_index()andrestore_index()helper methods.Files Changed
dodo/dashboard.py: Section query lookup, debounce timer, QTimer importdodo/search.py: Thread-ID-based selection restoration, remove dead helpersTesting
Pull request closed