mirror of
https://github.com/ankitects/anki.git
synced 2025-09-19 14:32:22 -04:00
fix latex render progress; display more frequently
This commit is contained in:
parent
49cda5ffbb
commit
0c27126817
2 changed files with 14 additions and 11 deletions
|
@ -6,6 +6,7 @@ from __future__ import annotations
|
||||||
import os
|
import os
|
||||||
import re
|
import re
|
||||||
import sys
|
import sys
|
||||||
|
import time
|
||||||
import urllib.error
|
import urllib.error
|
||||||
import urllib.parse
|
import urllib.parse
|
||||||
import urllib.request
|
import urllib.request
|
||||||
|
@ -176,24 +177,23 @@ class MediaManager:
|
||||||
|
|
||||||
If an error is encountered, returns (note_id, error_message)
|
If an error is encountered, returns (note_id, error_message)
|
||||||
"""
|
"""
|
||||||
last_progress = intTime()
|
last_progress = time.time()
|
||||||
for c, (nid, mid, flds) in enumerate(
|
checked = 0
|
||||||
self.col.db.execute("select id, mid, flds from notes")
|
for (nid, mid, flds) in self.col.db.execute(
|
||||||
|
"select id, mid, flds from notes where flds like '%[%'"
|
||||||
):
|
):
|
||||||
if "[" not in flds:
|
|
||||||
continue
|
|
||||||
|
|
||||||
model = self.col.models.get(mid)
|
model = self.col.models.get(mid)
|
||||||
_html, errors = render_latex_returning_errors(flds, model, self.col)
|
_html, errors = render_latex_returning_errors(flds, model, self.col)
|
||||||
if errors:
|
if errors:
|
||||||
return (nid, "\n".join(errors))
|
return (nid, "\n".join(errors))
|
||||||
|
|
||||||
if c % 10 == 0:
|
checked += 1
|
||||||
elap = last_progress - intTime()
|
elap = time.time() - last_progress
|
||||||
if elap >= 1 and progress_cb is not None:
|
if elap >= 0.3 and progress_cb is not None:
|
||||||
last_progress = intTime()
|
last_progress = intTime()
|
||||||
if not progress_cb(c + 1):
|
if not progress_cb(checked):
|
||||||
return None
|
return None
|
||||||
|
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
|
|
@ -98,8 +98,11 @@ class MediaChecker:
|
||||||
self.progress_dialog = self.mw.progress.start()
|
self.progress_dialog = self.mw.progress.start()
|
||||||
try:
|
try:
|
||||||
out = self.mw.col.media.render_all_latex(self._on_render_latex_progress)
|
out = self.mw.col.media.render_all_latex(self._on_render_latex_progress)
|
||||||
|
if self.progress_dialog.wantCancel:
|
||||||
|
return
|
||||||
finally:
|
finally:
|
||||||
self.mw.progress.finish()
|
self.mw.progress.finish()
|
||||||
|
self.progress_dialog = None
|
||||||
|
|
||||||
if out is not None:
|
if out is not None:
|
||||||
nid, err = out
|
nid, err = out
|
||||||
|
|
Loading…
Reference in a new issue