Code: Select all
getFaviconBase64 : function(uri) {
var faviconURI = NetUtil.newURI(uri);
if ( PlacesUtils.favicons.getFaviconDataAsDataURL )
return PlacesUtils.favicons.getFaviconDataAsDataURL(faviconURI);
else if ( PlacesUtils.favicons.getFaviconData ) {
var aMimeType = {};
var aData = PlacesUtils.favicons.getFaviconData(faviconURI, aMimeType, {});
return 'data:' + aMimeType.value + ';base64,' + btoa(String.fromCharCode.apply(null, aData));
}
else {
/* how to do under firefox 23a1? */
return;
}
},
for example:
ICON_FAKE_URI: "http://www.mozilla.org/2005/made-up-favicon/3-1366822463005"
getFaviconBase64 can export ICON_FAKE_URI to icon_base64_data:
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAACAElEQVQ4jaXQP2gaARzF8V9JoYMdjFcogdKCq5NQG4UDIYJOdjluENQSSkSOQpa0W0ICCUeGdD3xUJBcPBN6YP0zZAsJbcE2t8g1Qj3CgSDJUAiF4nHV10UyKQHz3d9neETjPB7Ps5WVlZwsy72jo6N/29vb3ziOe09ELrqrYDD4ulwu/766usJoNMJoNIJt2zg9PYUkST9dLtfTqeP5+fnniqL86fV6t+PhcAjHcWBZFvb397G5ufl5KpDJZD4Wi0VUq1Xc3NzcIo7j4Pj4GLlcDqIoDhcWFl5MBNbW1r4mk0mIooiTkxMMBgPYtg1d17G7u4v19XWk02nE4/HENOA8lUpBlmVUKhXouo5ut4tarYaDgwOUSiUIggCe599OBLLZrJxIJKBpGs7OzmCaJvr9PjqdDlqtFur1OnZ2dhAKhSITAb/fH15dXYUkSTAMA5Zl4fr6GpeXlzAMA4qioFAo9Ijo0dQjBUGQtra20Gw2cXFxAdM00W630Wg0oKoqNjY2ylPH4x7wPP9OluW+qqo4PDyEpmnI5/O/YrHYh729vb+RSOQTET25C3ro8/leLS0t8V6v9yURzRERMQyTXl5edsLh8DkRMXchE2MY5g3HcQ7LsvdC0tFo1FlcXPxBRJ6ZEZZlnUAg8J2I3DMhbrc77fP5vhDR45mAcXNERP8Bl14gWgfFzO0AAAAASUVORK5CYII="
viewtopic.php?f=19&t=2649539
The following APIs will be removed: (replaced by mozIAsyncFavicons)
nsIFaviconService::getFaviconData
nsIFaviconService::getFaviconDataAsDataURL
As this two APIS don't works under lastest firefox23a1, I searched "mozIAsyncFavicons" and can't found only API or interface works. Could someone tell me how to do under firefox 23a1?