diff options
Diffstat (limited to 'qutebrowser/browser/history.py')
-rw-r--r-- | qutebrowser/browser/history.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/qutebrowser/browser/history.py b/qutebrowser/browser/history.py index 8ce319cba..ef4650a35 100644 --- a/qutebrowser/browser/history.py +++ b/qutebrowser/browser/history.py @@ -88,6 +88,7 @@ class CompletionMetaInfo(sql.SqlTable): KEYS = { 'excluded_patterns': '', + 'force_rebuild': False, } def __init__(self, parent=None): @@ -95,8 +96,6 @@ class CompletionMetaInfo(sql.SqlTable): constraints={'key': 'PRIMARY KEY'}) if sql.user_version_changed(): self._init_default_values() - # force_rebuild is not in use anymore - self.delete('key', 'force_rebuild', optional=True) def _check_key(self, key): if key not in self.KEYS: @@ -165,7 +164,7 @@ class WebHistory(sql.SqlTable): self.completion = CompletionHistory(parent=self) self.metainfo = CompletionMetaInfo(parent=self) - rebuild_completion = False + rebuild_completion = self.metainfo['force_rebuild'] if sql.user_version_changed(): # If the DB user version changed, run a full cleanup and rebuild the @@ -186,8 +185,8 @@ class WebHistory(sql.SqlTable): self.metainfo['excluded_patterns'] = patterns rebuild_completion = True - if rebuild_completion and self.completion: - # If no completion history exists, we don't need to spawn a dialog for + if rebuild_completion and self: + # If no history exists, we don't need to spawn a dialog for # cleaning it up. self._rebuild_completion() @@ -259,6 +258,10 @@ class WebHistory(sql.SqlTable): log.sql.debug(f"Cleanup removed {entries.rows_affected()} items") def _rebuild_completion(self): + # If this process was interrupted, make sure we trigger a rebuild again + # at the next start. + self.metainfo['force_rebuild'] = True + data: Mapping[str, MutableSequence[str]] = { 'url': [], 'title': [], @@ -305,6 +308,7 @@ class WebHistory(sql.SqlTable): QApplication.processEvents() self._progress.finish() + self.metainfo['force_rebuild'] = False def get_recent(self): """Get the most recent history entries.""" |