X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=manga%2Freader.py;h=b7530422cb38e40e459ced40485c86d3065153aa;hb=dcaf33f5e6a46ce130995956e5b6eeafbe688bc3;hp=6694ecde35d5b663eb94603a646fc3ccfdb60582;hpb=1aa34ec9cf4ddd9dab038465fa51a96747c8a488;p=automanga.git diff --git a/manga/reader.py b/manga/reader.py index 6694ecd..b753042 100644 --- a/manga/reader.py +++ b/manga/reader.py @@ -295,11 +295,12 @@ class msgproc(object): self._prog = None def prog(self, p): - if p is not None and self._prog is None: - self._prog = gtk.ProgressBar() + if p is not None: + if self._prog is None: + self._prog = gtk.ProgressBar() + self.hlay.pack_start(self._prog, padding=5) + self._prog.show() self._prog.set_fraction(p) - self.hlay.pack_start(self._prog, padding=5) - self._prog.show() elif p is None and self._prog is not None: self.hlay.remove(self._prog) self._prog = None @@ -634,9 +635,15 @@ class reader(gtk.Window): self.page.set_off((self.page.get_asize()[0], self.page.off[1])) if self.point is not None: if ev.keyval in [ord(' ')]: - self.fetchpage(self.point.next, lambda page: self.preload.set(preload(relpageget(page, False, self.cache)))) + if self.page and self.page.off[1] + self.page.get_asize()[1] < self.page.get_zsize()[1]: + self.pan((0, self.page.get_asize()[1] - 50)) + else: + self.fetchpage(self.point.next, lambda page: self.preload.set(preload(relpageget(page, False, self.cache)))) elif ev.keyval in [65288]: - self.fetchpage(self.point.prev, lambda page: self.preload.set(preload(relpageget(page, True, self.cache)))) + if self.page and self.page.off[1] > 0: + self.pan((0, -(self.page.get_asize()[1] - 50))) + else: + self.fetchpage(self.point.prev, lambda page: self.preload.set(preload(relpageget(page, True, self.cache)))) elif ev.keyval in [ord('R'), ord('r')]: page = self.point.cur.cur del self.cache[page]