Bug 1355890 - Move robot favicon to separate file draft
authorAndreas Tolfsen <ato@mozilla.com>
Thu, 27 Apr 2017 22:59:16 +0100
changeset 578798 eb789fe2ea997047936745c3bf4a5e3031ff6e91
parent 578797 549cc74d1ffd25ab1e9fb784ab75ee5ee08bd7c4
child 578799 88c62c48ee8517c442340baf9ff180254210653a
push id59067
push userbmo:ato@mozilla.com
push dateTue, 16 May 2017 16:07:44 +0000
bugs1355890
milestone55.0a1
Bug 1355890 - Move robot favicon to separate file Robot favicon (image/png) is currently only used in about:robots (browser/base/content/aboutRobots.xhtml), but we intend to re-use this resource for indicating that the browser is under remote (robot) control. MozReview-Commit-ID: 4eTNbAITPQx
browser/base/content/aboutRobots.xhtml
browser/base/content/robot.ico
browser/base/jar.mn
browser/components/sessionstore/test/browser_label_and_icon.js
--- a/browser/base/content/aboutRobots.xhtml
+++ b/browser/base/content/aboutRobots.xhtml
@@ -19,17 +19,17 @@
     SYSTEM "chrome://browser/locale/aboutRobots.dtd">
   %aboutrobotsDTD;
 ]>
 
 <html xmlns="http://www.w3.org/1999/xhtml">
   <head>
     <title>&robots.pagetitle;</title>
     <link rel="stylesheet" href="chrome://global/skin/netError.css" type="text/css" media="all" />
-    <link rel="icon" type="image/png" id="favicon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAAACGFjVEwAAAASAAAAAJNtBPIAAAAaZmNUTAAAAAAAAAAQAAAAEAAAAAAAAAAALuAD6AABhIDeugAAALhJREFUOI2Nk8sNxCAMRDlGohauXFOMpfTiAlxICqAELltHLqlgctg1InzMRhpFAc%2BLGWTnmoeZYamt78zXdZmaQtQMADlnU0OIAlbmJUBEcO4bRKQY2rUXIPmAGnDuG%2FBx3%2FfvOPVaDUg%2BoAPUf1PArIMCSD5glMEsUGaG%2BkyAFWIBaCsKuA%2BHGCNijLgP133XgOEtaPFMy2vUolEGJoCIzBmoRUR9%2B7rxj16DZaW%2FmgtmxnJ8V3oAnApQwNS5zpcAAAAaZmNUTAAAAAEAAAAQAAAAEAAAAAAAAAAAAB4D6AIB52fclgAAACpmZEFUAAAAAjiNY2AYBVhBc3Pzf2LEcGreqcbwH1kDNjHauWAUjAJyAADymxf9WF%2Bu8QAAABpmY1RMAAAAAwAAABAAAAAQAAAAAAAAAAAAHgPoAgEK8Q9%2FAAAAFmZkQVQAAAAEOI1jYBgFo2AUjAIIAAAEEAAB0xIn4wAAABpmY1RMAAAABQAAABAAAAAQAAAAAAAAAAAAHgPoAgHnO30FAAAAQGZkQVQAAAAGOI1jYBieYKcaw39ixHCC%2F6cwFWMTw2rz%2F1MM%2F6Vu%2Ff%2F%2F%2FxTD%2F51qEIwuRjsXILuEGLFRMApgAADhNCsVfozYcAAAABpmY1RMAAAABwAAABAAAAAQAAAAAAAAAAAAHgPoAgEKra7sAAAAFmZkQVQAAAAIOI1jYBgFo2AUjAIIAAAEEAABM9s3hAAAABpmY1RMAAAACQAAABAAAAAQAAAAAAAAAAAAHgPoAgHn3p%2BwAAAAKmZkQVQAAAAKOI1jYBgFWEFzc%2FN%2FYsRwat6pxvAfWQM2Mdq5YBSMAnIAAPKbF%2F1BhPl6AAAAGmZjVEwAAAALAAAAEAAAABAAAAAAAAAAAAAeA%2BgCAQpITFkAAAAWZmRBVAAAAAw4jWNgGAWjYBSMAggAAAQQAAHaszpmAAAAGmZjVEwAAAANAAAAEAAAABAAAAAAAAAAAAAeA%2BgCAeeCPiMAAABAZmRBVAAAAA44jWNgGJ5gpxrDf2LEcIL%2FpzAVYxPDavP%2FUwz%2FpW79%2F%2F%2F%2FFMP%2FnWoQjC5GOxcgu4QYsVEwCmAAAOE0KxUmBL0KAAAAGmZjVEwAAAAPAAAAEAAAABAAAAAAAAAAAAAeA%2BgCAQoU7coAAAAWZmRBVAAAABA4jWNgGAWjYBSMAggAAAQQAAEpOBELAAAAGmZjVEwAAAARAAAAEAAAABAAAAAAAAAAAAAeA%2BgCAeYVWtoAAAAqZmRBVAAAABI4jWNgGAVYQXNz839ixHBq3qnG8B9ZAzYx2rlgFIwCcgAA8psX%2FWvpAecAAAAaZmNUTAAAABMAAAAQAAAAEAAAAAAAAAAAAB4D6AIBC4OJMwAAABZmZEFUAAAAFDiNY2AYBaNgFIwCCAAABBAAAcBQHOkAAAAaZmNUTAAAABUAAAAQAAAAEAAAAAAAAAAAAB4D6AIB5kn7SQAAAEBmZEFUAAAAFjiNY2AYnmCnGsN%2FYsRwgv%2BnMBVjE8Nq8%2F9TDP%2Blbv3%2F%2F%2F8Uw%2F%2BdahCMLkY7FyC7hBixUTAKYAAA4TQrFc%2BcEoQAAAAaZmNUTAAAABcAAAAQAAAAEAAAAAAAAAAAAB4D6AIBC98ooAAAABZmZEFUAAAAGDiNY2AYBaNgFIwCCAAABBAAASCZDI4AAAAaZmNUTAAAABkAAAAQAAAAEAAAAAAAAAAAAB4D6AIB5qwZ%2FAAAACpmZEFUAAAAGjiNY2AYBVhBc3Pzf2LEcGreqcbwH1kDNjHauWAUjAJyAADymxf9cjJWbAAAABpmY1RMAAAAGwAAABAAAAAQAAAAAAAAAAAAHgPoAgELOsoVAAAAFmZkQVQAAAAcOI1jYBgFo2AUjAIIAAAEEAAByfEBbAAAABpmY1RMAAAAHQAAABAAAAAQAAAAAAAAAAAAHgPoAgHm8LhvAAAAQGZkQVQAAAAeOI1jYBieYKcaw39ixHCC%2F6cwFWMTw2rz%2F1MM%2F6Vu%2Ff%2F%2F%2FxTD%2F51qEIwuRjsXILuEGLFRMApgAADhNCsVlxR3%2FgAAABpmY1RMAAAAHwAAABAAAAAQAAAAAAAAAAAAHgPoAgELZmuGAAAAFmZkQVQAAAAgOI1jYBgFo2AUjAIIAAAEEAABHP5cFQAAABpmY1RMAAAAIQAAABAAAAAQAAAAAAAAAAAAHgPoAgHlgtAOAAAAKmZkQVQAAAAiOI1jYBgFWEFzc%2FN%2FYsRwat6pxvAfWQM2Mdq5YBSMAnIAAPKbF%2F0%2FMvDdAAAAAElFTkSuQmCC"/>
+    <link rel="icon" type="image/png" id="favicon" href="chrome://browser/content/robot.ico"/>
 
     <script type="application/javascript"><![CDATA[
       var buttonClicked = false;
       function robotButton() {
         var button = document.getElementById("errorTryAgain");
         if (buttonClicked) {
           button.style.visibility = "hidden";
         } else {
new file mode 100644
index 0000000000000000000000000000000000000000..8913387fc93dc55f031165691d4caeec4721bdd1
GIT binary patch
literal 1791
zc%17D@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`9Er&xK0sOsh#4m5vU~zkQfUw|
z2ABpYn?dgZ^9u&XmWF$~fSetkE{-7<y}gr9^Bz&)aj|q;B(^RlxM%5?M@%suTnkwA
zqTTgYCKTN;RjN7TCgsX_zFRWo`K<Pti7VH>KXbiw<}9ZxJPelU!Ok5_Vb4?@TngSv
zyDX8owN+f<XM+@w^P%wm_xBcGqj){+7BF9_4?eJ_naRU0Vah?BfV8$>J`JKtj2YTo
zJNVlrl#_aP@L#XJ-tbU2<D<{%>??}`+0+_3&Pc9sb*cTm>tlahbL!Ilv$)fa71e}S
zG0fo#IB;d>x#>tgWkmNWgB<e<CdTLKccuZ^T4^bcAwZhRqBl7~f;GaixcGB@(vgC!
zdn=E9kdI_GGrYAkL8OPNh=JkLZ1KMl@#{V!nazydY_5;|^+2{5)NB@r*^5EuZ~(ai
z42+kB)E^_6!-~U=*0mrR2dFu0U~}drESEYAa$?i}<p!e3!iTdy{}1N*zclaf|Ns9*
z4*#E<CD5biW-YF;yG3GSpaE9`1H(fTZPB`(8wE%<vg2_1+I4S`T+V^%a^u_PElB2Y
z;&A!B`5TZzmy5X2b!_=rg=9824mW!EL?XG72h)wWHe013nZt|2jZJpSNTJI|N$9Gv
z?BznTkspW4Mc$r5a=8Ge%QY<oxsl8f#BR<r(WqNUp({jO=w`oUe2!$cFm|)Kn>&q>
z+$e(S#sdK|FOkd<#o<QJ-=0XJD@IA^o}VLxoaV%Fxct7x0wkA9V7gpkCQl!dIg&VB
zzDDv7Qs_z%7rI48VL3=<OXF~()hSUVH_BkT@#IHFWOHP3xbee|e5BBoqa<{vi<JLE
zvQZv~%hR&kkX){S>2jHWF``K3C}KC~Y10Khq|j9&E_CgUKHLQv;pyt<vd$@?2>>z>
B&Y=JR
--- a/browser/base/jar.mn
+++ b/browser/base/jar.mn
@@ -123,16 +123,17 @@ browser.jar:
 *       content/browser/pageinfo/pageInfo.xul         (content/pageinfo/pageInfo.xul)
         content/browser/pageinfo/pageInfo.js          (content/pageinfo/pageInfo.js)
         content/browser/pageinfo/pageInfo.css         (content/pageinfo/pageInfo.css)
         content/browser/pageinfo/pageInfo.xml         (content/pageinfo/pageInfo.xml)
         content/browser/pageinfo/feeds.js             (content/pageinfo/feeds.js)
         content/browser/pageinfo/feeds.xml            (content/pageinfo/feeds.xml)
         content/browser/pageinfo/permissions.js       (content/pageinfo/permissions.js)
         content/browser/pageinfo/security.js          (content/pageinfo/security.js)
+        content/browser/robot.ico                     (content/robot.ico)
         content/browser/sync/aboutSyncTabs.xul        (content/sync/aboutSyncTabs.xul)
         content/browser/sync/aboutSyncTabs.js         (content/sync/aboutSyncTabs.js)
         content/browser/sync/aboutSyncTabs.css        (content/sync/aboutSyncTabs.css)
         content/browser/sync/aboutSyncTabs-bindings.xml  (content/sync/aboutSyncTabs-bindings.xml)
         content/browser/safeMode.css                  (content/safeMode.css)
         content/browser/safeMode.js                   (content/safeMode.js)
         content/browser/safeMode.xul                  (content/safeMode.xul)
         content/browser/sanitize.js                   (content/sanitize.js)
--- a/browser/components/sessionstore/test/browser_label_and_icon.js
+++ b/browser/components/sessionstore/test/browser_label_and_icon.js
@@ -33,17 +33,17 @@ add_task(async function test_label_and_i
   browser = null;
 
   // Open a new tab to restore into.
   tab = BrowserTestUtils.addTab(gBrowser, "about:blank");
   ss.setTabState(tab, state);
   await promiseTabRestoring(tab);
 
   // Check that label and icon are set for the restoring tab.
-  ok(gBrowser.getIcon(tab).startsWith("data:image/png;"), "icon is set");
+  is(gBrowser.getIcon(tab), "chrome://browser/content/robot.ico", "icon is set");
   is(tab.label, "Gort! Klaatu barada nikto!", "label is set");
 
   let serhelper = Cc["@mozilla.org/network/serialization-helper;1"]
                     .getService(Ci.nsISerializationHelper);
   let serializedPrincipal = tab.getAttribute("iconLoadingPrincipal");
   let iconLoadingPrincipal = serhelper.deserializeObject(serializedPrincipal)
                                       .QueryInterface(Ci.nsIPrincipal);
   is(iconLoadingPrincipal.origin, "about:robots", "correct loadingPrincipal used");