[gnome-music/wip/mschraal/artrework: 21/23] move scale to get()
- From: Marinus Schraal <mschraal src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-music/wip/mschraal/artrework: 21/23] move scale to get()
- Date: Tue, 23 Jan 2018 00:41:21 +0000 (UTC)
commit f6c9b37ecbf58c4078d7cbb492f684462ec28b61
Author: Marinus Schraal <mschraal gnome org>
Date: Sat Jan 20 13:46:17 2018 +0100
move scale to get()
gnomemusic/albumartcache.py | 36 +++++++++++++++++-------------------
gnomemusic/views/searchview.py | 3 ++-
2 files changed, 19 insertions(+), 20 deletions(-)
---
diff --git a/gnomemusic/albumartcache.py b/gnomemusic/albumartcache.py
index 4b26f27..da41b2c 100644
--- a/gnomemusic/albumartcache.py
+++ b/gnomemusic/albumartcache.py
@@ -151,13 +151,11 @@ class DefaultIcon(GObject.GObject):
return '<DefaultIcon>'
@log
- def __init__(self, scale=1):
+ def __init__(self):
super().__init__()
- self._scale = scale
-
@log
- def _make_default_icon(self, icon_type, art_size=None):
+ def _make_default_icon(self, icon_type, art_size, scale):
width = art_size.width * self._scale
height = art_size.height * self._scale
@@ -187,7 +185,7 @@ class DefaultIcon(GObject.GObject):
return icon_surface
@log
- def get(self, icon_type, art_size):
+ def get(self, icon_type, art_size, scale=1):
"""Returns the requested symbolic icon
Returns a cairo surface of the requested symbolic icon in the
@@ -199,11 +197,11 @@ class DefaultIcon(GObject.GObject):
:return: The symbolic icon
:rtype: cairo.Surface
"""
- if (icon_type, art_size) not in self._cache.keys():
- new_icon = self._make_default_icon(icon_type, art_size)
- self._cache[(icon_type, art_size)] = new_icon
+ if (icon_type, art_size, scale) not in self._cache.keys():
+ new_icon = self._make_default_icon(icon_type, art_size, scale)
+ self._cache[(icon_type, art_size, scale)] = new_icon
- return self._cache[(icon_type, art_size)]
+ return self._cache[(icon_type, art_size, scale)]
class Art(GObject.GObject):
@@ -227,14 +225,14 @@ class Art(GObject.GObject):
self.height = height
@log
- def __init__(self, size, media):
+ def __init__(self, size, media, scale=1):
super().__init__()
self._size = size
self._media = media
self._media_url = self._media.get_url()
self._surface = None
- self._scale = 1
+ self._scale = scale
@log
def _start_art_lookup(self):
@@ -296,8 +294,8 @@ class Art(GObject.GObject):
self._no_art_available()
def _no_art_available(self):
- self._surface = DefaultIcon(self._scale).get(
- DefaultIcon.Type.music, self._size)
+ self._surface = DefaultIcon().get(
+ DefaultIcon.Type.music, self._size, self._scale)
def _add_to_blacklist(self):
album = utils.get_album_title(self._media)
@@ -353,8 +351,8 @@ class ArtImage(Art):
self._scale = self._image.get_scale_factor()
- self._surface = DefaultIcon(self._scale).get(
- DefaultIcon.Type.loading, self._size)
+ self._surface = DefaultIcon().get(
+ DefaultIcon.Type.loading, self._size, self._scale)
self._image.set_from_surface(self._surface)
@@ -367,8 +365,8 @@ class ArtPixbuf(Art):
'finished': (GObject.SignalFlags.RUN_FIRST, None, ())
}
- def __init__(self, size, media):
- super().__init__(size, media)
+ def __init__(self, size, media, scale=1):
+ super().__init__(size, media, scale)
self._iter = None
@@ -392,8 +390,8 @@ class ArtPixbuf(Art):
@pixbuf.setter
@log
def pixbuf(self, pixbuf):
- self._surface = DefaultIcon(self._scale).get(
- DefaultIcon.Type.loading, self._size)
+ self._surface = DefaultIcon().get(
+ DefaultIcon.Type.loading, self._size, self._scale)
self._start_art_lookup()
diff --git a/gnomemusic/views/searchview.py b/gnomemusic/views/searchview.py
index 3f32299..b46b6f1 100644
--- a/gnomemusic/views/searchview.py
+++ b/gnomemusic/views/searchview.py
@@ -239,8 +239,9 @@ class SearchView(BaseView):
# scaled by GdkPixbuf, so it results in a * scale factor sized
# icon for the search view.
_iter = None
+ scale = self._view.get_scale_factor()
pixbuf = GdkPixbuf.Pixbuf()
- art = ArtPixbuf(Art.Size.SMALL, item)
+ art = ArtPixbuf(Art.Size.SMALL, item, scale)
art.pixbuf = pixbuf
if category == 'album':
_iter = self.model.insert_with_values(
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]