Check-in [ee9da14a46]
Overview
| Comment: | Mark PIL workaround as obsolete. |
|---|---|
| Downloads: | Tarball | ZIP archive | SQL archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
ee9da14a462c7a757e97bfd121559c9b |
| User & Date: | mario on 2015-04-17 21:06:24 |
| Other Links: | manifest | tags |
Context
|
2015-04-17
| ||
| 21:07 | Tested fixed-width for pixbuf cellrenderer in stream lists; little effect. Set .module attribute for auxiliary windows (unused). check-in: b434d63e4e user: mario tags: trunk | |
| 21:06 | Mark PIL workaround as obsolete. check-in: ee9da14a46 user: mario tags: trunk | |
|
2015-04-15
| ||
| 20:58 | Run channel.first_show() on tab switches in a separate thread. This makes ST2 *look* snappy after initialization, and for the very first startup in particular. (Seems to work stable after all, even uncovers the HTTP statusbar updates now.) check-in: 56c215a897 user: mario tags: trunk | |
Changes
Modified favicon.py from [0407b40e06] to [c9075572d2].
| ︙ | ︙ | |||
39 40 41 42 43 44 45 | # if it's not available the first time, we won't get it after switching stations back and forth tried_urls = [] # walk through entries | | | | 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# if it's not available the first time, we won't get it after switching stations back and forth
tried_urls = []
# walk through entries
def download_all(entries, treestore=None, pix_i=None):
t = Thread(target= download_thread, args= ([entries]))
t.start()
def download_thread(entries):
for e in entries:
# try just once
if e.get("homepage") in tried_urls:
continue
# retrieve specific img url as favicon
elif e.get("img"):
localcopy(e["img"], True)
continue
# favicon from homepage URL
elif e.get("homepage"):
download(e["homepage"])
# remember
tried_urls.append(e.get("homepage"))
pass
# download a single favicon for currently playing station
def download_playing(row, treestore_pix=None):
if conf.google_homepage and not row.get("homepage"):
google_find_homepage(row)
if conf.load_favicon and row.get("homepage"):
download_all([row])
pass
|
| ︙ | ︙ | |||
208 209 210 211 212 213 214 |
# URL download
r = urllib.urlopen(favicon)
headers = r.info()
# abort on
if r.getcode() >= 300:
raise Error("HTTP error" + r.getcode())
| | | 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 |
# URL download
r = urllib.urlopen(favicon)
headers = r.info()
# abort on
if r.getcode() >= 300:
raise Error("HTTP error" + r.getcode())
if not headers["Content-Type"].lower().find("image/") == 0:
raise Error("can't use text/* content")
# save file
fn_tmp = fn+".tmp"
f = open(fn_tmp, "wb")
f.write(r.read(32768))
f.close()
|
| ︙ | ︙ | |||
258 259 260 261 262 263 264 265 266 267 268 269 270 271 |
# download
direct_download(favicon, file(url))
#
# title: workaround for PIL.Image to preserve the transparency for .ico import
#
# http://stackoverflow.com/questions/987916/how-to-determine-the-transparent-color-index-of-ico-image-with-pil
# http://djangosnippets.org/snippets/1287/
#
| > | 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 |
# download
direct_download(favicon, file(url))
#@obsolete since Pillow 2.1.x
#
# title: workaround for PIL.Image to preserve the transparency for .ico import
#
# http://stackoverflow.com/questions/987916/how-to-determine-the-transparent-color-index-of-ico-image-with-pil
# http://djangosnippets.org/snippets/1287/
#
|
| ︙ | ︙ |