Internet radio browser GUI for music/video streams from various directory services.

⌈⌋ ⎇ branch:  streamtuner2


All files named "channels/favicon.py"

History for channels/favicon.py

2020-05-14
23:05
Add binary JPEG detection \xFF\xD8\xFF magic bytes. file: [e380c77c1c] check-in: [a888486bae] user: mario, branch: trunk, size: 14862 [annotate] [blame] [check-ins using] [diff]
2019-02-06
21:16
Switch to XDG_CACHE_HOME/.cache (because that's what the cache files are, not really user data). More consistently use new storage path throughout core and plugins (favicon+cachereset). file: [81d5a0ff38] check-in: [2ee52fe7e8] user: mario, branch: trunk, size: 14849 [annotate] [blame] [check-ins using] [diff]
2016-12-16
16:26
Reverted all `module = __name__` assignments, because that was carrying the module over, not the base classname. Added #extraction-method: meta information to channel plugins. file: [edc53741f5] check-in: [09dec64f41] user: mario, branch: trunk, size: 14845 [annotate] [blame] [check-ins using] [diff]
2016-12-14
15:57
new plugin: theme installer for Gtk2 and Windows; fixed for support of JSON format; gtk_reset_styles -- Oliver file: [ef3ab53102] check-in: [ec7df3c333] user: mario, branch: trunk, size: 14844 [annotate] [blame] [check-ins using] [diff]
2016-12-10
13:55
Use `module = __name__` consistently for all plugins file: [8c7cddb000] check-in: [88aac7840a] user: mario, branch: trunk, size: 14844 [annotate] [blame] [check-ins using] [diff]
2016-12-03
21:23
Removed plugin option background colors. file: [06b56c7d15] check-in: [9520bc51a3] user: mario, branch: trunk, size: 14845 [annotate] [blame] [check-ins using] [diff]
2016-10-22
19:01
Minor text fixes file: [c4ea9b38ed] check-in: [e421c1af60] user: mario, branch: trunk, size: 14863 [annotate] [blame] [check-ins using] [diff]
2016-04-18
23:56
Disable logging for google_homepage file: [09f6bbd70b] check-in: [4f6de091f1] user: mario, branch: trunk, size: 14864 [annotate] [blame] [check-ins using] [diff]
2016-04-17
23:54
Fix google_homepage regex, filter out tunein+streema urls. file: [de8c98b1c8] check-in: [86ef3aaa35] user: mario, branch: trunk, size: 14862 [annotate] [blame] [check-ins using] [diff]
2015-05-24
17:46
Fix unqualified icon_dir reference. file: [0fa0d36699] check-in: [e2c2c405e7] user: mario, branch: trunk, size: 14577 [annotate] [blame] [check-ins using] [diff]
10:02
Lighter highlight color: for plugin options. file: [b858bcec7a] check-in: [160f4dd660] user: mario, branch: trunk, size: 14575 [annotate] [blame] [check-ins using] [diff]
2015-05-23
15:28
Simplify favicon callbacks, use channel= instead of artifical pixstore= tuple. update_rows() itself extracts liststore and indicies now. Introduce `img_resize` channel option for `img` banner rescaling in favicon module. file: [b3a8f61678] check-in: [867c9f9f94] user: mario, branch: trunk, size: 14572 [annotate] [blame] [check-ins using] [diff]
2015-05-18
22:21
Allow Exif-wrapped JPEGs as well (not just JFIF regexp check). Comment on merging row["favourite"] merge via prepare_filters list. file: [87b5a0fc51] check-in: [6d03cb84d3] user: mario, branch: trunk, size: 13502 [annotate] [blame] [check-ins using] [diff]
00:29
Strip double .png/.jpeg extension from cached `img` icons. file: [9b5655d121] check-in: [77ab1e927e] user: mario, branch: trunk, size: 13495 [annotate] [blame] [check-ins using] [diff]
2015-05-17
19:13
Remove stray `print` statement file: [214b0ad098] check-in: [d10f61093f] user: mario, branch: trunk, size: 13472 [annotate] [blame] [check-ins using] [diff]
2015-05-16
01:47
Use shorter domain names for homepage favicons again. file: [8987f1daae] check-in: [9931f4e0e5] user: mario, branch: trunk, size: 13501 [annotate] [blame] [check-ins using] [diff]
2015-05-14
18:41
Remove a few options from configuration dialog; now available in [feature] plugin tabs for favicon module. Favicon module exposes google_station_homepage, and retrieval methods, but no longer `conf.show_favicons` (which is decided on just by having the plugin enabled - or not.) Introduce conf.auto_save_stations for favicon/DND plugin. file: [cef590a4be] check-in: [8c7b4f2662] user: mario, branch: trunk, size: 13285 [annotate] [blame] [check-ins using] [diff]
2015-05-13
19:00
Make favicon redisplay work after google_find_homepage() and existing icons in cache. Shorter timeout/display for status label for google search. file: [2be50aefaa] check-in: [56776a4e90] user: mario, branch: trunk, size: 12701 [annotate] [blame] [check-ins using] [diff]
00:00
Move mime_fmt() into regular function. Fix live365 ahttp feedback= bug. Regroup functions and update a few comments in channels/__init__ file: [7782a3f227] check-in: [2335ea7a46] user: mario, branch: trunk, size: 12195 [annotate] [blame] [check-ins using] [diff]
2015-05-12
20:03
Use GenericChannel.prepare_filters hook to update "favicon" filenames in rows. Precompile row_to_fn regexps. Fix google_find_homepage params (just a function, not a method). file: [bdefdbfe53] check-in: [8c0b288e66] user: mario, branch: trunk, size: 12147 [annotate] [blame] [check-ins using] [diff]
2015-05-10
22:34
Fix URL patching (after actually testing it). And provide fallback for image resizing (.thumbnail in PIL 2.3.0 is broken). file: [7cf3ceafbb] check-in: [12e7646cbf] user: mario, branch: trunk, size: 11736 [annotate] [blame] [check-ins using] [diff]
22:11
Move internal commentary out of plugin description block. Try/Catch processing failures in update_rows() loop. Use quieter=1 option for image downloads. Reimplement custom base_url+href favicon patching. file: [453360923b] check-in: [4e95040e40] user: mario, branch: trunk, size: 11531 [annotate] [blame] [check-ins using] [diff]
19:45
Work atop Python3 by using io.BytesIO rather than compat2and3 module. file: [608e7fc3f8] check-in: [7ec987b9ba] user: mario, branch: trunk, size: 10997 [annotate] [blame] [check-ins using] [diff]
19:20
Renamed favicon.py → channels/favicon.py. Move `favicon` module into extension/feature plugin. Simplify row["favicon"] cache filename pregeneration; separate from favicon module (but basically duplicated code there). Refactor most internal favicon+banner processing, rename methods for clarity. Plugin registers itself as .hooks["play"] callback. Uses main.thread() now instead of custom variant. Create icon cache dir on initialiation rather. Use combined row_to_fn() for cache filename generation instead of domain(), url(), file(), etc. Previous banner downloads are ignored, because the filename normalization is more in line with domain favicons now. Only update pixstore on successful downloads. Pre-check the content type per binary regex now, before saving image files. Combine resizing into store_image() function as well. Even PNG files will be piped through PIL (for sanitization). Completely got rid of urllib usage. Homepage/HTML extraction got rewritten, simpler, still inexact; but works now for most webpages. Favicon homepage downloading checks both returned MIME type and actual file content prior saving. Shorten timeouts to 2-3 seconds for Google and custom favicon retrieval. file: [444cf2c952] check-in: [bd1a9cba05] user: mario, branch: trunk, size: 10833 [annotate] [blame] [check-ins using] [diff]