picard/fix-cover-art-downloads.diff
Olaf Hering b6d44fd48e Accepting request 457107 from home:alarrosa:branches:multimedia:apps
- Update to version 1.4.0
  * Bugfix: AcoustID submission fails with code 299 (PICARD-82)
  * Bugfix: Ignoring "hip hop rap" folksonomy tags also ignores "rap", "hip hop", etc. (PICARD-335)
  * Bugfix: Picard downloads multiple 'front' images instead of just first one. (PICARD-350)
  * Bugfix: Saving hidden file with only an extension drops the extension (PICARD-357)
  * Bugfix: Add directory opens in "wrong" dir (PICARD-366)
  * Bugfix: Picard should de-duplicate work lists (PICARD-375)
  * Bugfix: Tree selector in Options window is partially obscured, pane too narrow (PICARD-408)
  * Bugfix: tag acoustid_id can not be removed or deleted in script, renaming or plugin (PICARD-419)
  * Bugfix: Can't remove value from field (PICARD-546)
  * Bugfix: Can't open Options (PICARD-592)
  * Bugfix: "Tags from filenames" action stays enabled even if it is unavailable. (PICARD-688)
  * Bugfix: Using the first image type as filename changes the name of front images (PICARD-701)
  * Bugfix: Fingerprint Submission Failes if AcoustID tags are present and/or invalid (PICARD-706)
  * Bugfix: Picard moves into the selected folder (PICARD-726)
  * Bugfix: Picard does not support (recording) relationship credits (PICARD-730)
  * Bugfix: Picard repeats/duplicates field data (PICARD-748)
  * Bugfix: Number of pending web requests is not decremented on exceptions in the handler (PICARD-751)
  * Bugfix: Divide by zero error in _convert_folksonomy_tags_to_genre when no tag at the release/release group level (  PICARD-753)
  * Bugfix: Directory tree (file browser) not sorted for non-system drives under Windows (PICARD-754)
  * Bugfix: Crash when loading release with only zero count tags (PICARD-759)
  * Bugfix: No name and no window grouping in gnome-shell Alt-Tab app switcher (PICARD-761)
  * Bugfix: Lookup in Browser does not and can not load HTTPS version of musicbrainz.org (PICARD-764)
  * Bugfix: Unable to login using oauth via Picard options with Server Port set to 443 (PICARD-766)
  * Bugfix: "AttributeError: 'MetadataBox' object has no attribute 'resize_columns'" when enabling the cover art box (  PICARD-775)
  * Bugfix: Pre-gap tracks are not counted in absolutetracknumber (PICARD-778)
  * Bugfix: CAA cover art provider runs even if cover art has already been loaded (PICARD-780)
  * Bugfix: Toggling Embed Cover Art in Tags and restarting doesn't have the expected behavior (PICARD-782)
  * Bugfix: XMLWS redirects incorrectly (PICARD-788)
  * Bugfix: Handle empty collection-list in web server response (PICARD-798)

OBS-URL: https://build.opensuse.org/request/show/457107
OBS-URL: https://build.opensuse.org/package/show/multimedia:apps/picard?expand=0&rev=47
2017-02-14 14:37:35 +00:00

57 lines
2.3 KiB
Diff

diff --git a/picard/ui/coverartbox.py b/picard/ui/coverartbox.py
index fc515877..f381fe77 100644
--- a/picard/ui/coverartbox.py
+++ b/picard/ui/coverartbox.py
@@ -54,14 +54,14 @@ class ActiveLabel(QtGui.QLabel):
def dragEnterEvent(self, event):
for url in event.mimeData().urls():
- if url.scheme() in ('http', 'file'):
+ if url.scheme() in ('https', 'http', 'file'):
event.acceptProposedAction()
break
def dropEvent(self, event):
accepted = False
for url in event.mimeData().urls():
- if url.scheme() in ('http', 'file'):
+ if url.scheme() in ('https', 'http', 'file'):
accepted = True
self.imageDropped.emit(url)
if accepted:
@@ -153,11 +153,15 @@ class CoverArtBox(QtGui.QGroupBox):
def fetch_remote_image(self, url):
if self.item is None:
return
- if url.scheme() == 'http':
+ if url.scheme() in ('https', 'http'):
path = url.encodedPath()
if url.hasQuery():
path += '?' + url.encodedQuery()
- self.tagger.xmlws.get(url.encodedHost(), url.port(80), path,
+ if url.scheme() == 'https':
+ port = 443
+ else:
+ port = 80
+ self.tagger.xmlws.get(str(url.encodedHost()), url.port(port), str(path),
partial(self.on_remote_image_fetched, url),
xml=False,
priority=True, important=True)
@@ -173,13 +177,14 @@ class CoverArtBox(QtGui.QGroupBox):
mime = reply.header(QtNetwork.QNetworkRequest.ContentTypeHeader)
if mime in ('image/jpeg', 'image/png'):
self.load_remote_image(url, mime, data)
- elif reply.url().hasQueryItem("imgurl"):
+ elif url.hasQueryItem("imgurl"):
# This may be a google images result, try to get the URL which is encoded in the query
- url = QtCore.QUrl(reply.url().queryItemValue("imgurl"))
+ url = QtCore.QUrl(url.queryItemValue("imgurl"))
self.fetch_remote_image(url)
else:
log.warning("Can't load image with MIME-Type %s", mime)
+
def load_remote_image(self, url, mime, data):
try:
coverartimage = CoverArtImage(