mirror of
https://github.com/ankitects/anki.git
synced 2025-11-13 16:17:13 -05:00
hack to keep scroll position in deckbrowser
noticeable flash when page is redrawn; in the future we'll need to use js to update the page
This commit is contained in:
parent
8b6ef5579f
commit
dfaf9251c3
1 changed files with 6 additions and 5 deletions
|
|
@ -84,6 +84,9 @@ class DeckBrowser:
|
||||||
def _renderPage(self, reuse=False):
|
def _renderPage(self, reuse=False):
|
||||||
if not reuse:
|
if not reuse:
|
||||||
self._dueTree = self.mw.col.sched.deckDueTree()
|
self._dueTree = self.mw.col.sched.deckDueTree()
|
||||||
|
self.web.evalWithCallback("window.pageYOffset", self.__renderPage)
|
||||||
|
|
||||||
|
def __renderPage(self, offset):
|
||||||
tree = self._renderDeckTree(self._dueTree)
|
tree = self._renderDeckTree(self._dueTree)
|
||||||
stats = self._renderStats()
|
stats = self._renderStats()
|
||||||
self.web.stdHtml(self._body%dict(
|
self.web.stdHtml(self._body%dict(
|
||||||
|
|
@ -92,12 +95,10 @@ class DeckBrowser:
|
||||||
js=["jquery.js", "jquery-ui.js", "deckbrowser.js"])
|
js=["jquery.js", "jquery-ui.js", "deckbrowser.js"])
|
||||||
self.web.key = "deckBrowser"
|
self.web.key = "deckBrowser"
|
||||||
self._drawButtons()
|
self._drawButtons()
|
||||||
|
self._scrollToOffset(offset)
|
||||||
|
|
||||||
def _oldPos(self):
|
def _scrollToOffset(self, offset):
|
||||||
if self.web.key == "deckBrowser":
|
self.web.eval("$(function() { window.scrollTo(0, %d, 'instant'); });" % offset)
|
||||||
return self.web.page().mainFrame().scrollPosition()
|
|
||||||
else:
|
|
||||||
return self.scrollPos
|
|
||||||
|
|
||||||
def _renderStats(self):
|
def _renderStats(self):
|
||||||
cards, thetime = self.mw.col.db.first("""
|
cards, thetime = self.mw.col.db.first("""
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue