Dont roundtrip via JPEG when image dropped on book details popup window

This commit is contained in:
Kovid Goyal 2016-08-24 21:15:12 +05:30
parent 0b4ff115a8
commit 924f426310

View File

@ -243,13 +243,15 @@ class ImageDropMixin(object): # {{{
d.start_download()
if d.err is None:
pmap = QPixmap()
pmap.loadFromData(open(d.fpath, 'rb').read())
with lopen(d.fpath, 'rb') as f:
data = f.read()
pmap.loadFromData(data)
if not pmap.isNull():
self.handle_image_drop(pmap)
self.handle_image_drop(pmap, data=data)
def handle_image_drop(self, pmap):
def handle_image_drop(self, pmap, data=None):
self.set_pixmap(pmap)
self.cover_changed.emit(pixmap_to_data(pmap, quality=100))
self.cover_changed.emit(data or pixmap_to_data(pmap, format='PNG'))
def dragMoveEvent(self, event):
event.acceptProposedAction()
@ -284,7 +286,7 @@ class ImageDropMixin(object): # {{{
if not pmap.isNull():
self.set_pixmap(pmap)
self.cover_changed.emit(
pixmap_to_data(pmap, quality=100))
pixmap_to_data(pmap, format='PNG'))
# }}}
class ImageView(QWidget, ImageDropMixin): # {{{