Bug 1149721 - Restyle the Sync preferences page. r=jaws
authorEdouard Oger <edouard.oger@gmail.com>
Tue, 04 Aug 2015 11:46:00 +0200
changeset 287984 5b3ba9f596e376f3110077c5140dff51275976ee
parent 287813 a4baa2a12eefd74a12e5485f7c3d494a912ac558
child 287985 de6f45e30226195589e8ab173fcb4781ce50a28a
push id5067
push userraliiev@mozilla.com
push dateMon, 21 Sep 2015 14:04:52 +0000
treeherdermozilla-beta@14221ffe5b2f [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjaws
bugs1149721
milestone42.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1149721 - Restyle the Sync preferences page. r=jaws
browser/components/preferences/in-content/sync.js
browser/components/preferences/in-content/sync.xul
browser/locales/en-US/chrome/browser/preferences/sync.dtd
browser/themes/linux/jar.mn
browser/themes/osx/jar.mn
browser/themes/osx/preferences/preferences.css
browser/themes/shared/customizableui/panelUIOverlay.inc.css
browser/themes/shared/fxa/android.png
browser/themes/shared/fxa/android@2x.png
browser/themes/shared/fxa/default-avatar.png
browser/themes/shared/fxa/default-avatar@2x.png
browser/themes/shared/fxa/default-profile-image.svg
browser/themes/shared/fxa/logo.png
browser/themes/shared/fxa/logo@2x.png
browser/themes/shared/fxa/sync-illustration.png
browser/themes/shared/fxa/sync-illustration@2x.png
browser/themes/shared/incontentprefs/preferences.inc.css
browser/themes/windows/jar.mn
--- a/browser/components/preferences/in-content/sync.js
+++ b/browser/components/preferences/in-content/sync.js
@@ -235,42 +235,38 @@ let gSyncPane = {
     setEventListener("loginErrorResetPass", "click", function () {
       gSyncPane.resetPass();
       return false;
     });
     setEventListener("loginErrorStartOver", "click", function () {
       gSyncPane.startOver(true);
       return false;
     });
-    setEventListener("noFxaSignUp", "click", function () {
+    setEventListener("noFxaSignUp", "command", function () {
       gSyncPane.signUp();
       return false;
     });
-    setEventListener("noFxaSignIn", "click", function () {
+    setEventListener("noFxaSignIn", "command", function () {
       gSyncPane.signIn();
       return false;
     });
-    setEventListener("noFxaUseOldSync", "click", function () {
-      gSyncPane.openOldSyncSupportPage();
-      return false;
-    });
     setEventListener("verifiedManage", "command",
       gSyncPane.manageFirefoxAccount);
     setEventListener("fxaUnlinkButton", "click", function () {
       gSyncPane.unlinkFirefoxAccount(true);
     });
     setEventListener("verifyFxaAccount", "command",
       gSyncPane.verifyFirefoxAccount);
-    setEventListener("unverifiedUnlinkFxaAccount", "click", function () {
+    setEventListener("unverifiedUnlinkFxaAccount", "command", function () {
       /* no warning as account can't have previously synced */
       gSyncPane.unlinkFirefoxAccount(false);
     });
     setEventListener("rejectReSignIn", "command",
       gSyncPane.reSignIn);
-    setEventListener("rejectUnlinkFxaAccount", "click", function () {
+    setEventListener("rejectUnlinkFxaAccount", "command", function () {
       gSyncPane.unlinkFirefoxAccount(true);
     });
     setEventListener("tosPP-small-ToS", "click", gSyncPane.openToS);
     setEventListener("tosPP-small-PP", "click", gSyncPane.openPrivacyPolicy);
     setEventListener("sync-migrate-upgrade", "click", function () {
       let win = Services.wm.getMostRecentWindow("navigator:browser");
       fxaMigrator.createFxAccount(win);
     });
--- a/browser/components/preferences/in-content/sync.xul
+++ b/browser/components/preferences/in-content/sync.xul
@@ -195,148 +195,181 @@
       </label>
     </hbox>
     <label id="loginErrorStartOver" class="text-link">
       &unlinkDevice.label;
     </label>
   </vbox>
 
   <!-- These panels are for the Firefox Accounts identity provider -->
-  <vbox id="noFxaAccount" align="start">
-    <label>&welcome.description;</label>
-    <label id="noFxaSignUp" class="text-link">
-      &welcome.createAccount.label;
-    </label>
-    <label id="noFxaSignIn" class="text-link">
-      &welcome.signIn.label;
-    </label>
-    <separator/>
-    <label id="noFxaUseOldSync" class="text-link">
-      &welcome.useOldSync.label;
-    </label>
+  <vbox id="noFxaAccount">
+    <hbox>
+      <groupbox id="noFxaGroup">
+        <vbox>
+          <label id="noFxaCaption">&signedOut.caption;</label>
+          <description id="noFxaDescription" flex="1">&signedOut.description;</description>
+          <hbox class="fxaAccountBox">
+            <image class="fxaFirefoxLogo"/>
+            <vbox>
+              <label id="signedOutAccountBoxTitle">&signedOut.accountBox.title;</label>
+              <hbox>
+                <button id="noFxaSignUp" label="&signedOut.accountBox.create;"/>
+                <button id="noFxaSignIn" label="&signedOut.accountBox.signin;"/>
+              </hbox>
+            </vbox>
+          </hbox>
+        </vbox>
+      </groupbox>
+      <image class="fxaSyncIllustration"/>
+    </hbox>
+    <hbox class="fxaMobilePromo">
+      <label>&mobilePromo.start;</label>
+      <image class="androidLogo"/>
+      <label class="text-link"
+             href="https://www.mozilla.org/firefox/android/">
+        &mobilePromo.androidLink;
+      </label>
+      <label>&mobilePromo.end;</label>
+    </hbox>
+    <label class="androidAttribution">&androidAttribution;</label>
   </vbox>
 
   <vbox id="hasFxaAccount">
-    <groupbox id="fxaGroup">
-      <caption><label>&syncBrand.fxAccount.label;</label></caption>
+    <hbox>
+      <vbox>
+        <groupbox id="fxaGroup">
+          <caption><label>&syncBrand.fxAccount.label;</label></caption>
 
-      <deck id="fxaLoginStatus">
+              <deck id="fxaLoginStatus">
 
-        <!-- logged in and verified and all is good -->
-        <hbox id="fxaLoginVerified"
-              align="center">
-          <hbox align="center">
-            <image id="fxaProfileImage"
-              onclick="gSyncPane.openChangeProfileImage();" hidden="true"
-              tooltiptext="&profilePicture.tooltip;"/>
-            <label id="fxaEmailAddress1"/>
-            <label id="fxaDisplayName" hidden="true"/>
-          </hbox>
-          <spacer flex="1"/>
-          <button id="verifiedManage"
-                  label="&manage.label;"/>
-          <button id="fxaUnlinkButton"
-                  label="&disconnect.label;"/>
-        </hbox>
+                <!-- logged in and verified and all is good -->
+                <hbox id="fxaLoginVerified" class="fxaAccountBox">
+                  <image id="fxaProfileImage"
+                      onclick="gSyncPane.openChangeProfileImage();" hidden="true"
+                      tooltiptext="&profilePicture.tooltip;" class="actionable"/>
+                  <vbox>
+                    <label id="fxaEmailAddress1"/>
+                    <label id="fxaDisplayName" hidden="true"/>
+                    <hbox class="fxaAccountBoxButtons">
+                      <button id="verifiedManage" label="&manage.label;"/>
+                      <button id="fxaUnlinkButton" label="&disconnect.label;"/>
+                    </hbox>
+                  </vbox>
+                </hbox>
 
-        <!-- logged in to an unverified account -->
-        <hbox id="fxaLoginUnverified"
-              flex="1">
-          <description>
-            &signedInUnverified.beforename.label;
-            <label id="fxaEmailAddress2"/>
-            &signedInUnverified.aftername.label;
-          </description>
-          <spacer flex="1"/>
-          <vbox align="end">
-            <button id="verifyFxaAccount"
-                    label="&verify.label;"/>
-            <label id="unverifiedUnlinkFxaAccount" class="text-link">
-              &forget.label;
-            </label>
-          </vbox>
-        </hbox>
+                <!-- logged in to an unverified account -->
+                <hbox id="fxaLoginUnverified" class="fxaAccountBox">
+                  <image id="fxaProfileImage"/>
+                  <vbox>
+                    <hbox>
+                      <vbox><image id="fxaLoginRejectedWarning"/></vbox>
+                      <description>
+                        &signedInUnverified.beforename.label;
+                        <label id="fxaEmailAddress2"/>
+                        &signedInUnverified.aftername.label;
+                      </description>
+                    </hbox>
+                    <hbox class="fxaAccountBoxButtons">
+                      <button id="verifyFxaAccount" label="&verify.label;"/>
+                      <button id="unverifiedUnlinkFxaAccount" label="&forget.label;"/>
+                    </hbox>
+                  </vbox>
+                </hbox>
 
-        <!-- logged in locally but server rejected credentials -->
-        <hbox id="fxaLoginRejected"
-              flex="1">
-          <vbox>
-            <image id="fxaLoginRejectedWarning"/>
-          </vbox>
-          <description>
-            &signedInLoginFailure.beforename.label;
-            <label id="fxaEmailAddress3"/>
-            &signedInLoginFailure.aftername.label;
-          </description>
-          <spacer flex="1"/>
-          <vbox align="end">
-            <button id="rejectReSignIn"
-                    label="&signIn.label;"/>
-            <label id="rejectUnlinkFxaAccount" class="text-link">
-              &forget.label;
-            </label>
-          </vbox>
-        </hbox>
-      </deck>
-    </groupbox>
-
-    <groupbox id="syncOptions">
-      <caption><label>&syncBrand.shortName.label;</label></caption>
-      <hbox id="fxaSyncEngines">
-        <vbox align="start">
-          <checkbox label="&engine.tabs.label;"
-                    accesskey="&engine.tabs.accesskey;"
-                    preference="engine.tabs"/>
-          <checkbox label="&engine.bookmarks.label;"
-                    accesskey="&engine.bookmarks.accesskey;"
-                    preference="engine.bookmarks"/>
-          <checkbox label="&engine.passwords.label;"
-                    accesskey="&engine.passwords.accesskey;"
-                    preference="engine.passwords"/>
-        </vbox>
-        <vbox align="start">
-          <checkbox label="&engine.history.label;"
-                    accesskey="&engine.history.accesskey;"
-                    preference="engine.history"/>
-          <checkbox label="&engine.addons.label;"
-                    accesskey="&engine.addons.accesskey;"
-                    preference="engine.addons"/>
-          <checkbox label="&engine.prefs.label;"
-                    accesskey="&engine.prefs.accesskey;"
-                    preference="engine.prefs"/>
-        </vbox>
-        <spacer/>
-      </hbox>
-    </groupbox>
+                <!-- logged in locally but server rejected credentials -->
+                <hbox id="fxaLoginRejected" class="fxaAccountBox">
+                  <image id="fxaProfileImage"/>
+                  <vbox>
+                    <hbox>
+                      <vbox><image id="fxaLoginRejectedWarning"/></vbox>
+                      <description>
+                        &signedInLoginFailure.beforename.label;
+                        <label id="fxaEmailAddress3"/>
+                        &signedInLoginFailure.aftername.label;
+                      </description>
+                    </hbox>
+                    <hbox class="fxaAccountBoxButtons">
+                      <button id="rejectReSignIn" label="&signIn.label;"/>
+                      <button id="rejectUnlinkFxaAccount" label="&forget.label;"/>
+                    </hbox>
+                  </vbox>
+                </hbox>
+              </deck>
+        </groupbox>
+        <groupbox id="syncOptions">
+          <caption><label>&signedIn.engines.caption;</label></caption>
+          <hbox id="fxaSyncEngines">
+            <vbox align="start">
+              <checkbox label="&engine.tabs.label;"
+                        accesskey="&engine.tabs.accesskey;"
+                        preference="engine.tabs"/>
+              <checkbox label="&engine.bookmarks.label;"
+                        accesskey="&engine.bookmarks.accesskey;"
+                        preference="engine.bookmarks"/>
+              <checkbox label="&engine.passwords.label;"
+                        accesskey="&engine.passwords.accesskey;"
+                        preference="engine.passwords"/>
+            </vbox>
+            <vbox align="start">
+              <checkbox label="&engine.history.label;"
+                        accesskey="&engine.history.accesskey;"
+                        preference="engine.history"/>
+              <checkbox label="&engine.addons.label;"
+                        accesskey="&engine.addons.accesskey;"
+                        preference="engine.addons"/>
+              <checkbox label="&engine.prefs.label;"
+                        accesskey="&engine.prefs.accesskey;"
+                        preference="engine.prefs"/>
+            </vbox>
+            <spacer/>
+          </hbox>
+        </groupbox>
+      </vbox>
+      <spacer flex="1"/>
+      <image class="fxaSyncIllustration"/>
+    </hbox>
+    <spacer class="separator"/>
     <groupbox>
       <caption>
         <label accesskey="&syncDeviceName.accesskey;"
                control="fxaSyncComputerName">
           &fxaSyncDeviceName.label;
         </label>
       </caption>
       <hbox id="fxaDeviceName">
-        <hbox flex="1">
+        <hbox>
           <textbox id="fxaSyncComputerName" disabled="true" flex="1"/>
         </hbox>
+        <spacer flex="1"/>
         <hbox>
           <button id="fxaChangeDeviceName"
                   label="&changeSyncDeviceName.label;"/>
           <button id="fxaCancelChangeDeviceName"
                   label="&cancelChangeSyncDeviceName.label;"
                   hidden="true"/>
           <button id="fxaSaveChangeDeviceName"
                   label="&saveChangeSyncDeviceName.label;"
                   hidden="true"/>
         </hbox>
       </hbox>
     </groupbox>
+    <spacer class="separator"/>
+    <hbox class="fxaMobilePromo">
+      <label>&mobilePromo.start;</label>
+      <image class="androidLogo"/>
+      <label class="text-link"
+             href="https://www.mozilla.org/firefox/android/">
+        &mobilePromo.androidLink;
+      </label>
+      <label>&mobilePromo.end;</label>
+    </hbox>
     <spacer flex="1"/>
     <vbox id="tosPP-small">
       <label id="tosPP-small-ToS" class="text-link">
         &prefs.tosLink.label;
       </label>
       <label id="tosPP-small-PP" class="text-link">
         &fxaPrivacyNotice.link.label;
       </label>
     </vbox>
+    <label class="androidAttribution">&androidAttribution;</label>
   </vbox>
 </deck>
--- a/browser/locales/en-US/chrome/browser/preferences/sync.dtd
+++ b/browser/locales/en-US/chrome/browser/preferences/sync.dtd
@@ -78,8 +78,22 @@ both, to better adapt this sentence to t
 <!ENTITY verify.label                "Verify Email">
 <!ENTITY forget.label                "Forget this Email">
 
 <!ENTITY welcome.description "Access your tabs, bookmarks, passwords and more wherever you use &brandShortName;.">
 <!ENTITY welcome.signIn.label "Sign In">
 <!ENTITY welcome.createAccount.label "Create Account">
 
 <!ENTITY welcome.useOldSync.label "Using an older version of Sync?">
+
+<!ENTITY signedOut.caption            "Take your Web with you">
+<!ENTITY signedOut.description        "Synchronize your bookmarks, history, tabs, passwords, add-ons, and preferences across all your devices.">
+<!ENTITY signedOut.accountBox.title   "Connect with a &syncBrand.fxAccount.label;">
+<!ENTITY signedOut.accountBox.create  "Create Account">
+<!ENTITY signedOut.accountBox.signin  "Sign In">
+
+<!ENTITY signedIn.engines.caption     "Sync between all devices">
+
+<!ENTITY mobilePromo.start            "Download Firefox for ">
+<!-- LOCALIZATION NOTE (mobilePromo.androidLink): This is a link title that links to https://www.mozilla.org/firefox/android/ -->
+<!ENTITY mobilePromo.androidLink      "Androidâ„¢">
+<!ENTITY mobilePromo.end              " to sync with your mobile device.">
+<!ENTITY androidAttribution           "Android is a trademark of Google Inc.">
--- a/browser/themes/linux/jar.mn
+++ b/browser/themes/linux/jar.mn
@@ -217,17 +217,24 @@ browser.jar:
   skin/classic/browser/preferences/Options-sync.png   (preferences/Options-sync.png)
 #endif
 * skin/classic/browser/preferences/preferences.css    (preferences/preferences.css)
 * skin/classic/browser/preferences/in-content/preferences.css (preferences/in-content/preferences.css)
 * skin/classic/browser/preferences/in-content/dialog.css      (preferences/in-content/dialog.css)
   skin/classic/browser/preferences/in-content/favicon.ico     (../shared/incontentprefs/favicon.ico)
   skin/classic/browser/preferences/in-content/icons.svg       (../shared/incontentprefs/icons.svg)
   skin/classic/browser/preferences/in-content/search.css      (../shared/incontentprefs/search.css)
-  skin/classic/browser/fxa/default-profile-image.svg   (../shared/fxa/default-profile-image.svg)
+  skin/classic/browser/fxa/default-avatar.png                 (../shared/fxa/default-avatar.png)
+  skin/classic/browser/fxa/default-avatar@2x.png              (../shared/fxa/default-avatar@2x.png)
+  skin/classic/browser/fxa/logo.png                           (../shared/fxa/logo.png)
+  skin/classic/browser/fxa/logo@2x.png                        (../shared/fxa/logo@2x.png)
+  skin/classic/browser/fxa/sync-illustration.png              (../shared/fxa/sync-illustration.png)
+  skin/classic/browser/fxa/sync-illustration@2x.png           (../shared/fxa/sync-illustration@2x.png)
+  skin/classic/browser/fxa/android.png                        (../shared/fxa/android.png)
+  skin/classic/browser/fxa/android@2x.png                     (../shared/fxa/android@2x.png)
   skin/classic/browser/preferences/applications.css   (preferences/applications.css)
   skin/classic/browser/preferences/aboutPermissions.css (preferences/aboutPermissions.css)
   skin/classic/browser/preferences/search.css         (preferences/search.css)
   skin/classic/browser/social/services-16.png         (social/services-16.png)
   skin/classic/browser/social/services-64.png         (social/services-64.png)
   skin/classic/browser/social/share-button.png        (social/share-button.png)
   skin/classic/browser/social/share-button-active.png (social/share-button-active.png)
   skin/classic/browser/social/chat-icons.svg          (../shared/social/chat-icons.svg)
--- a/browser/themes/osx/jar.mn
+++ b/browser/themes/osx/jar.mn
@@ -293,17 +293,24 @@ browser.jar:
 #endif
   skin/classic/browser/preferences/saveFile.png             (preferences/saveFile.png)
 * skin/classic/browser/preferences/preferences.css          (preferences/preferences.css)
 * skin/classic/browser/preferences/in-content/preferences.css (preferences/in-content/preferences.css)
 * skin/classic/browser/preferences/in-content/dialog.css      (preferences/in-content/dialog.css)
   skin/classic/browser/preferences/in-content/favicon.ico     (../shared/incontentprefs/favicon.ico)
   skin/classic/browser/preferences/in-content/icons.svg       (../shared/incontentprefs/icons.svg)
   skin/classic/browser/preferences/in-content/search.css      (../shared/incontentprefs/search.css)
-  skin/classic/browser/fxa/default-profile-image.svg   (../shared/fxa/default-profile-image.svg)
+  skin/classic/browser/fxa/default-avatar.png               (../shared/fxa/default-avatar.png)
+  skin/classic/browser/fxa/default-avatar@2x.png            (../shared/fxa/default-avatar@2x.png)
+  skin/classic/browser/fxa/logo.png                         (../shared/fxa/logo.png)
+  skin/classic/browser/fxa/logo@2x.png                      (../shared/fxa/logo@2x.png)
+  skin/classic/browser/fxa/sync-illustration.png            (../shared/fxa/sync-illustration.png)
+  skin/classic/browser/fxa/sync-illustration@2x.png         (../shared/fxa/sync-illustration@2x.png)
+  skin/classic/browser/fxa/android.png                      (../shared/fxa/android.png)
+  skin/classic/browser/fxa/android@2x.png                   (../shared/fxa/android@2x.png)
   skin/classic/browser/preferences/applications.css         (preferences/applications.css)
   skin/classic/browser/preferences/aboutPermissions.css     (preferences/aboutPermissions.css)
   skin/classic/browser/preferences/search.css               (preferences/search.css)
   skin/classic/browser/preferences/checkbox.png             (preferences/checkbox.png)
   skin/classic/browser/preferences/checkbox@2x.png          (preferences/checkbox@2x.png)
   skin/classic/browser/yosemite/preferences/checkbox.png    (preferences/checkbox-yosemite.png)
   skin/classic/browser/yosemite/preferences/checkbox@2x.png (preferences/checkbox-yosemite@2x.png)
   skin/classic/browser/social/services-16.png               (social/services-16.png)
--- a/browser/themes/osx/preferences/preferences.css
+++ b/browser/themes/osx/preferences/preferences.css
@@ -233,20 +233,16 @@ html|a.inline-link:-moz-focusring {
   list-style-image: url("chrome://mozapps/skin/profile/profileicon.png");
 }
 
 #syncAddDeviceLabel {
   margin-top: 1em;
   margin-bottom: 1em;
 }
 
-#fxaUnlinkButton {
-  margin: 0;
-}
-
 #noFxaAccount {
   margin: 12px 4px;
   line-height: 1.2em;
 }
 
 #noFxaAccount > label:first-child {
   margin-bottom: 0.6em;
 }
--- a/browser/themes/shared/customizableui/panelUIOverlay.inc.css
+++ b/browser/themes/shared/customizableui/panelUIOverlay.inc.css
@@ -697,17 +697,17 @@ toolbarpaletteitem[place="palette"] > to
   align-self: center;
   margin: 0px 7px;
   padding: 0px;
   border: 0px none;
   -moz-margin-end: 0;
 }
 
 #PanelUI-footer-fxa[fxaprofileimage="enabled"] > #PanelUI-fxa-status > #PanelUI-fxa-avatar {
-  list-style-image: url(chrome://browser/skin/fxa/default-profile-image.svg);
+  list-style-image: url(chrome://browser/skin/fxa/default-avatar.png)
 }
 
 #PanelUI-customize:hover,
 #PanelUI-help:not([disabled]):hover,
 #PanelUI-quit:not([disabled]):hover {
   -moz-image-region: rect(0, 32px, 16px, 16px);
 }
 
@@ -1493,16 +1493,20 @@ menuitem[checked="true"].subviewbutton >
     background-image: url(chrome://browser/skin/customizableui/subView-arrow-back-inverted-rtl@2x.png),
                       linear-gradient(rgba(255,255,255,0.3), transparent);
   }
 
   #PanelUI-update-status {
     list-style-image: url(chrome://branding/content/icon32.png);
   }
 
+  #PanelUI-footer-fxa[fxaprofileimage="enabled"] > #PanelUI-fxa-status > #PanelUI-fxa-avatar {
+    list-style-image: url(chrome://browser/skin/fxa/default-avatar@2x.png)
+  }
+
   #PanelUI-fxa-label,
   #PanelUI-fxa-icon {
     list-style-image: url(chrome://browser/skin/sync-horizontalbar@2x.png);
   }
 
   #PanelUI-footer-fxa[syncstatus="active"] > #PanelUI-fxa-icon {
     list-style-image: url(chrome://browser/skin/syncProgress-horizontalbar@2x.png);
   }
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..bb1ada87ffa878bcafe13172a865505b73070e11
GIT binary patch
literal 15286
zc%1E<e{2(F7{`wvf=q@J#3`Vh2Ln{D_oLTdd$gUiWo&5Y?1pqmWY@d5>q*-yz1!N2
zDZl<vG??N30G$az#gL$~KtLlu9VTcr7$iuDBqI=r#K06o6cg~SKek)j%_U&`=e^|a
zde8fOpU-pe`#$fz|MZR8nnlG$(~1xTDXy;a__X`O+BxIiaoTnDr8QTz+k{wEgMuIr
zmFefGYTxWW1hM}i)%#Vy_c>0GBPL#y1HhDw#1Q>(lqX}nuo9?f05nNaCwA@2!x$=w
zPHd^gOL}8&5R$6e;-Idrre0`UDcD7<+*RaAa$0~0P<b>N2}cz!>BLfTIqkP@CNMPR
zqONpe6?y~e_tv6rISx>Z$%+f4l|@;*iL$UP!_G%(lClt_nJ|+$ZRQw~V`wyUV6GzV
z>WGU$&gZGj;It<v7E;w1M-Yib!jv$Z<aiT7+3j|MqzRhFH4j{AjjDVSk1Dg$L9%f?
zKoR0nOqJv)sz37qxmk5$SP^PCGVc|M^@E~Hrth>~B$9lLpiCrDNF)mVnpkr@oJvg;
z2oMGl5LFdTM-|k?Lb56=A$bU7fAf%FEnBa5_<SRgf=WeQ*rE=vRO(w}fbaoDZjK9J
zVT<-EvkHY$rC_jdB)w(G+(A+rLZ-K*Wv&68Lwi@w9S6KB$LnP|>`KqF+H4=8Zg*-{
zq4T`FAVqcK6AmI*R45+sXs1ip;v|dHWIe@lq?w~^+9OAjh9GIroETnNl!C2=VlW(K
zHpVb`=El$}NaR(1L{W^shB%_Y1?6~zS6xzsZvsRt+T<Vxj0VsCdBwTqupHOY0xq+I
zC}bX-r`O9>M-`Qi3ZUBK(hMd^5;@jtqXIObae=W0afWB?ct9i>90VDGB+Yh<$g-)_
z2g~z9dt{+muNSQ?y|jq3poJeui!}#m)+W%nH7M{nMX@&A###e-z|2wsU=7eDW6pvM
z!SX=Q$0cp$<HH6Y{ar*22F!pq2ZAgP1V+G_fM~~g8*jtyHil;zN(_Ram_-x_lZUF3
z6m9CYx(3bv)S6TWRt>gh8^Tg*jf(Mc1?Uy%#Ihxb<q336s**Wg&{sE?kea4iii4~}
z%cT6_99b9S$%kenLLfR^c^SNh4x-3GHNnS0MU&RkBdh&F!n__Q(p~-^428nC+}S{k
ztgh~GAdIWa|2Yr?03pOjn}FydvcjxkWMh}M4z8|j#pYL|L;pnSm8|8&r-q1f5P7y-
zf4@Er!p&)ah9R|sp!91-Yi!TeHvEgWVHoW|(~_v9y6B7~$81pPU()nyUZ-vPfXiyJ
zm@N(>*PN@Um69Or_ek2Rrs#RlOh%L2P*B)l5Za8whCE?<ungO?^xluiZ2q);C(*z0
zEHq{A{sAEn0wE9rArJx~5CS0(0wE9rArJx~5CS0(0wE9rArJx~5CS0(0wE9rArJx~
z5CS0(0wE9rArJx~5CS0(0wE9rArNwxAw>g!<pfdDi6yXd*Yzvr(+Gl~LY2>pAZ=v`
zvUUT4{B>Kq|AHXRB!XONL=bKZf|SaeSA1QGAfp`Bo{IY9*<Vj}FCJ4-GOqX9rVpod
z``+uF;`g6@<*A)N?x>0Mm2{|BRo_%kZTslyuZ};uxO?}Wy}qLx&g^>p*!N}BT))`(
z`MEWhZ>?zwCf=#s^U;x-j`NXYHz(idUa%2e5`H^Wx@%_dq1U(3mA&&z!edty|9Ril
z-J5!__1hn1`qoana{i^_mwP6i?t3us@#N#NbyJs*pSe$Nw;u~q+h?D=i2pqCyHYpy
znR^x0K7Id%HnQs*`{t_U6Hm-};LMD7e_GVp?K*n+g?0CoE!!v@xG=Br;3MbIrjwz4
zuAZ9TV`EpF=e)n|#MVijJADCgvukJhzAuj4E;-&~BRck<*t-4A`@1^l{c!oMgFC?T
zy<a_cv8;1P?Y6(4?Qpz!Y0J|K4pdLz#w6!9e$e;ijZ3AUsO#Fl{q5A~rO8RJ*+<>#
cIW!Jg7OJ~;y|?SK{?FR#g*Bc}pJ`nG5A-{~cmMzZ
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..957b9071c7cba152d3418406ff0cf915d5736578
GIT binary patch
literal 736
zc%17D@N?(olHy`uVBq!ia0vp^20(1V!3HFE2UfoVQjEnx?oJHr&dIz4aySb-B8wRq
z#8g3;(KATp15j{UiEBiObAE1aYF-ILvPY1wLUKlFUUp7uo`SKFLS}kieo<<Q6|ZBk
zv!|z(f}UQLnx5XFhC?lSdWU!EftZI^=;@Uj0J*CY^z^I_%>W7(@OrpLSSc6)fw`lR
z8HlzpurLA9ZjJ^95WcGgSl-ka%y)GJD>E>5v;>PAnwuL4c`{!Cdf~CBi(^Q|oHx_$
zy$?G`v_~I2*R;T+uxP{NV!=BxZ|*40=E!@i_TpWN_{R8!3ubq_zIgCT!%yjkzJe2z
zAM3?e@4s{{jH&)VnR}1EjjGA}yMO1Ic~&o-l<3O7Hg`k5m7S?Sch1do$(ufy{$Mce
zwk$g!Q4*UL9J}WjYaZ`${RZ|Ad|@%qgLw=2_BkF-c%vv^{X}_oR)^{bws{BjELdwl
zuq1sr+4-}&_TFWN^$%Eeo@s92eD_m5^N{Rp<^Bhu1)TeI4*4e($85CR%yplov-!d0
z4VJU_9hU!meBSF1!Z+@y?>n?TUB`++dQPL0$JBq@UVkY4XCkP(ZQ85oaDjlA>DgCf
zTlJfdTQ-IT?+s;Tyjr&{?PlwNc`6rpBhn83*y!W1JpMO(kjjP2djw-I6)PH?2~2q5
zlrUxSffG>;r^+8@uWHEq^1a{i;qj?ge(uqmAHT%%W09gnh1h}y3w85Zc7p603g=cD
z7>F=_tQ1mUL?DfA4iEqPb(?X`WnevGx%mIuC?U~gZ_P87o1Fv=^n^GZ97?{YyXyFB
zhzs2P8+mb}`V{UZ@Bgi7T5X@I^K{F)==|$DGbb`|Mu>4vXh@ytz`#^oUcBw^J?%+v
tp5^@B8@^<x_ocVtE9HSH@c(~i2JuOo5BJI+X#jE=JYD@<);T3K0RVh;BIW=9
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..6ed0e7a777d3a57be0cb4a2fb6edea10854ed55e
GIT binary patch
literal 1562
zc%0=^i#OB>6#j`B@`xSLNj54(sU`IAR>O?eI~<Wmge7Y+_9$u>y)13Cc_ohsVJ($v
z5eg%un8Cz6%oxUu8S^q@p60RB-?8W1?|kR`&OP6`_ndqG2nvAdX`5&R0HEg!hlZ%w
z^&7O*zc~kOJXNHT?B(wT053~*WS2oIZJq!R@dtohD*(v94FFP=mA?)EzuEx+BMtzZ
zs{vq7Ms0tvDrkphkYA{`s$q0y@&8j3a|F^FgTog{q}wvNoWm0=QRtuM2}BBAE>|d(
zN(OuL^8yixT2v?$Br0Q_#bt8&NEG%fk;3BgQ8@Anjk&ocoWd+keO;n$aIj>WDu_&D
zPA`zC8|*p4Ds_XiN@tCsuvjuxD3YLYWIAh8Ad-AU<1kB<FAJnGG*&K`)0muzIXqt|
z<_SbXv1E<GR!uZVSYd7QMPdnVg(jA6Z*X{Wg<^V<G(L-;oG0K{XtQ`SnYKZpv&Ls}
z6b5^HTeiB+6o|wkiBv3+ZVAO4-WCeGJd0nM!7g+80veM$hQ@8nWXseI;u>R1B<Avk
zI5Lf{T1FsJD3lANHPsDdshfaR6qp?nZ~@SV-*`T;%AYhvjLG)9_jq`Y>}?L?f*)z>
z4Gcq!KBK-&4_1Wl<8*nQ8#Ug}@Xfo~M&U_V%LcEZmG2E_XLb#hZ??1|<=G$GKM~nd
z7MzDsMXSaC2!jGepzq--u`>gH5di?kmfxV}8)Cr)0Cgi@s8=X_{Ld;{l%bcw$5Z(R
z<_6}W-nRMW8ch+03ZtD%tO`x7w2Ht7tlO-$!62i3#zDoPJo({4%B1Bf7ewEHSu&A?
z$jd|Y^xS`V0y%a#4eqz%YJ;veFiVcJKYGRzgDmiCw@I;Yq$d^VZc=rl9UV%p9y#i8
zBz2M+T=6qH36a(JAPeD$8o1%+_*Ax|c&T@1zjHuCW`Aw6%R7z!42PtWx1KY7={C*v
ze7l}ET47@+<1$3>@2=+_7>sUvJP_YY(SZcTdcgP4)Os~6G%x-2v?M*wT8*UD40eOe
zTK4j0wcb6`y>dJuoOi9D#rBMD)h%Qhl&*avyKf}?gV=6o>4$%*6$cizN8KTnK8;f*
zQq4P%{_~>?8d13hCw0*FCi{1%QGu&}Lz-3{nMP@0C--(47Y<b2?JgNg9f+<anPZ<c
z9ea@oo_}ct7aJG)gOgxh(z;&)4?e47?LHSHt!Q!4B95gZQPFzWfMKW4)^}T5Q+joV
zeJYFMMew)!5^;Lv?RdrB!a-62+3mhzuEA7O;zO=&Jk1&(6OXO+fN~FM6Jcr9o#O{x
z{rZHffkvo-5AKhfF8N%t@NxrnUM+OQytsCPEo{eedT7nC<AE-9%N;|ce=ff?e19eA
zhxw@(^JA^*PzNnWiwWD}Sa^pX$nkX3-RH5v^{E|dS?-eleayF%>pew&!{7<iv)S1x
zyB36a%SJjvGhJ%PsdTC-c<s8&J*Pi|U@Hx8Zi^J$sWNj;k7$8JJjxctZ0_G(x~M;w
z%Pi)_-Ybo$>@;PYMLRQtCfb|{7u#P|2TuRQjO?8cO#mglIiGzw`iWfTorxI<W|Tp4
zavq@8Q=2pQj06{BF!wI#^dN_B%8h@s?d~>&dE&_vBGK<kHFU%K(8FPadio8p2OS&Z
zF3Rm0LTq10-9~~^#_%(??>!Nop=+cJ_0X;;JLFK37~#?7)H(I4wrINkewKe(MGD3z
zFwD*^@wAEctKo-@CE)U}ixx4TYD^N|m4hr}HJ?O9;&FI<WK@k)_bsK`TupsLM`jL8
P^)-O6cL22OY+T`g$Buwf
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0bda852f5a40a65435a73596e87664e8600a46db
GIT binary patch
literal 2560
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
Sh#`r76yW0EVc%dI3i}uSWwA&A
deleted file mode 100644
--- a/browser/themes/shared/fxa/default-profile-image.svg
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- This Source Code Form is subject to the terms of the Mozilla Public
-   - License, v. 2.0. If a copy of the MPL was not distributed with this
-   - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
-<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000">
-  <path fill="#c3cfd8" d="M500-0.3c276.1,0,500,223.9,500,500s-223.9,500-500,500S0,775.8,0,499.7C0,223.5,223.9-0.3,500-0.3z"/>
-  <circle fill="#fff" cx="500" cy="317" r="139.1"/>
-  <path fill="#fff" d="M751.8,643.6L751.8,643.6c0.1-2.3,0.2-4.6,0.2-6.9c0-68-55.3-127-136.2-156.3L505.9,590.4h0 c-0.4,29.8-1.4,58.8-2.8,86.6c-1,0.1-2,0.3-3.1,0.3s-2-0.2-3.1-0.3c-1.4-27.9-2.4-56.9-2.8-86.7h0L384.3,480.4 C303.3,509.7,248,568.7,248,636.7c0,2.3,0.1,4.6,0.2,6.9l7.4,49.7c57.1,72,145.4,118.2,244.4,118.2c99,0,187.3-46.2,244.4-118.2 L751.8,643.6z"/>
-</svg>
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..b54b392cccd03dbac9c3e96fd88d3349fc80015a
GIT binary patch
literal 17703
zc%1E=dpK0<+s7AnlD1MQc9Lnxp^TX^Co>qyVTf@`qKGlGhKZTMj6+D$X{#u5tW*+;
zQW6<*C>@-4Wv7E<O41fKr6}!pO=_poe)o0#e(&}Ev(|O3wPxMV^SwX!x}WEM=J{tP
z#@?1DC%ae{0022FOEX94zDj(`NJH0LPCy5Ao8@omDgb~*%f+XJm81F)0FYmCoLq!1
zbQ=nj&(&qH_+FrHDAyklABM)E{tTusC`5RH-W;A0a<HrtiQuq|kn0I_4Bg)p^x;^B
z1%hkCY@L{4zDzO;X-t(h45dI0xS)`M2<7_m1e8!C<VU|0=(E_2Mj}3T5&9Y-O~efd
z7rH&dlphEp2)aZR6GJ2+NMv0sfkeWSbP#$NECG$dp>Y_L9*%;?Q1E()PY04J3tbHZ
zS!{}<nZ+j@^kjte5eoe&Xmm(Oh;9f@mmlbj#*)coG)51tr-y=ipaffZLPjWxCs3Po
z^4X6WC}0M1{DmAo4<UYLc=3aTMo6SAV#@L9y}15=gLr~Zxr4HZ4rTbGvAP)abRrh>
zZ;gLYpx?*PSWGnN2XaB4Pyp$$)9U<v_(HzGhyMfQ-_1V+L($Ud{~RxuJFQY6G!GX3
zvr^!+#UDgFf&zX}AQLnXhF(Q&I#)stn?1cJamx>52SYhOkcnF+Wz;V^L+D*8rhy<s
z$PaYl^Zlrkv&{Z;ju57%A7>Rpi_Tzjcw(crA^Ka<bpAjy=%k9ZC=3auhjGG^C>R_C
zs}DU=FqkP$CVPJ4gU)Ah*juLafu~^cQ+-V7`K=GAf>;b8<6n81+INZ{7L&r}2XYxg
zDu>JP2GRaJZ$tDK<CLC%&nt>4-;W;%g#}V^hUn?cU&l$OQ>=IbA%n*Rt<0#9L6^f}
zQOJ6D9F~b8qZn9>7YeWMg@-;72`D`hi^w8?WE>e}d<^|-`FF0(_{<=2y+Cb~OACw7
zgxr4#i-gCqq2z!lBAdxTVX-8Als<{*h4R9YuwEe1OAmv`eFjZ&_8rJBkOQrJ48JLT
z#P7m_U^qOPfFZFlD6AJAMB%-#7!;XAB%%mdGK<9mi5La}`x!Bfo9|GT904@-wot#C
z{~y<+wP3*4*3S)ooR4diKO;~8iYw3v`MCs<-wDK;kCjYeFvY7ImHBa+vJBB*S${0!
zd_SE3E(PDof6NH+0eSyaUQ>Gg*olD87KShaK@)E%)BmparxSjcar9)${||;jzzF`&
z2IAk<)qgk;Q&*S&&w=;?VEQn4-XM#L{w(}#_;+JBY5lsoK3DAb)o3XGiV{~c6cgj)
z5J7YMJKMMYUBuJCFKDtq9*=<zG**25q@CLSt=9E_(YpSF_Dj<`9!E&k`y~0sJVhn`
zCY@Z(*Fu{<kV+&Fa0Em2x8`pZ_MA}A&&7-bt!e^s97Oyl&9@EH3SECBbp1{^IapJ+
zXOnwB^ry`qwC_a!z44rG%KY~a7y?6J2n>NCFa(Cc5EueOU<eF>Aut4nzz`S$LtqFD
zfgvyihQJUQ0z+U341pmq1cty67y?6J2n>NCFa(Cc5EueOU<eF>Au!~>43YivQ%;b_
zGD3zRjj0><4aWiifM8lW(g7fBIRHfM0D!T-pnD$x1YrQ+g(m<|QUO4bpWt!B0sv&s
zS(%wQg+A&(Qh#8{y@fZot!uyMes6GKODir;RbTp-`N(-P>L<*$yRa5i@7A#-vQk)A
zlZ^p$#*V}btIvAI>qK9%LP}cBi@9!Uu~#ZtRq40zu(0uov-$b!7rEm?*)Q%iw=*{)
zX`35;o^_PIiP$<o?j*lS^lT-1c+VR<Y#sV8W!qo9j~M6TC6>-uD%m8dxt)xdUDK4R
zYd>SSir%H?Kku#lX_cGVkwaZ+?ZAH5MNz#`BUNvr?5p0EjHJ!12(Ry?cQLyphcrE3
z^Qe-NLkqgjSIr-i9h#6xd~-;CNNFg%H*K4sMSg$?9Q%nX*&z`bW?5nW)3M-|w>7RK
zaZ;GM?`MQ6hQ1|^=kG};bOw+5(}2*90O#L2Of*02FWl41*9088g1YF4AVsr_iG?Zm
z)63-)rDrA{eG;!~d@w}er}@}4CmW5$@iKc%cbd&}kiQ_&T8yR7ZpZg+Hd@S0vb}su
z!s^laD4gxnGfSiaT$3o=(>|*?MhPcU5IIHLKli-Z(kxf^deN>m>CQO@&oABDzD?3j
zVpo79277uq8i7f&(la(N(OLY<qkJ{TR8j5Ef<wPRe($YL+ni}s^ZU%B<sW3U4oF3v
ze!`VXvb(7;;F`KDzeLr%`jStcJEeVTDZ^`nv+;v{NC)lxNSdXV-pLY!hMaC$Z@Z?o
zzQJz;&qd|FmX>(T-GlSVlpLaU#i*RumVN3tYfaI!eE!6Pe)ZWn(bhwRcF(-KC*1gV
zor|gjC>hB!CD&LQwN6Cy2V_cmz6Ir%CkEbeg(U?yoU^tsN%F}%Hf|(w<=NZa84{t9
zgHqW7jz)8>3UDn${>?G{)f)3!2@WquU9=Om?;U<n9ILf==W66`#<;FeEAh4Sp0K>?
zyB6_jZimOxmaM_oy<n$}^)1PH=52YC<+ax)!%fX&*hX=af5f$o)c|G?@pd74p?TbI
z^m+4Vcm*cfu7C2}DcJ_OTTW?r47c?xcU>@%kVMBCr<=yCIlE}ZS-)iIQK@XOz#%sQ
zecw`3At7K_p0#pYNViP02#+eN?>Cc{*K$@?%3fJ=o{TuFq7Y@=A3M@4dKG8Y5i+cm
zl8<^**%K!4c;NU{2FjrtO&w?{o|FB4Q=ZSIbxw5JAAJ#`iW^2FICX`zFl$in5Q~j$
z>?Jw3ud*bU8Vclr$o}ii?OV9RD{<?Q^S$j<z^!>}kQxi(#}C{MT0kf1Q%RyH4bTYp
zM8r5;zvvfuMt?z{y0x<Tir7Wagb}XJaN#B#WZ9}7>8a~3ZGANoXFE7oG77lTf4Feq
z&w<+1Yvs3+sv6Neg<ohr+8(*fc2!5bYal()xp#qErW#ymRce$TBaDs_CIpuE5hp-R
z!sQ*OhYoFuiB+J6j;(5zJIoF8yAo1lpZ(A|?MOq^(7KW~>gHPqY?jGHua|uN6d|hG
z*RgE#uh&gvaq(7hazJabs9;0YsFtjjLyQ~cF=67y2{r$p^?MH!Vyf>W28<$idS#hh
z&S5?z7IQOS3+rCD*wZqb?`b(7vGH!-p5BzLb>Hp4RWj|?LNst}q)uLuts%eb@hbVK
zzP1n7|GfKp;bD~^%Wd|re?lDDuO<_%Tyiq=$;wT%t}BXYV@kTR?;PLMMd|s(SMS*y
z&Hv~Nb@jCwZ7^*LAB*~V=-1Z$qS}VrofRp=_mf8qL{%3YxnY{Ly&=faUo-!p0!xEd
zddjXo4#Zj$>j~8Iz(boe3B!elxr2CD**)d&oons{sRDCFv9?-z4xCpnM7e!#r4<da
z_awtsQRUSGmhW8>A5pkkTV0P7|L6D{Qyy?MNIA{w=B?qzZ3PKA<WPnhV$roerl4Y#
zM)yS9RnvhGsjgFH+PiLE?EMvAVUT)^kzlL!^lpGhMHf?)(*~ppdb-r?U8?bC2nI^o
z<ckjnw+;mRjMl50W*qd`!dIPJvt<?emBo48o->42vs0MeoLDIT%hodZGj_DpizMWO
zNba0dF6HiBOD=~xFrxCa7tEh=e!NQ8UCO%X@$I1yO{%Sr`n;d6rldG+<nG)UxA%Bk
zZu&~p0*e|6TXe%X_F~5J8Z0df1C@e%WAiZnvYNewS2(SBU2Ols49wzLBVD8e0zr9|
zbJ2G2VOe5oQ&x?7H&nbE?7R!zaynkTrLK*!I4D*3QsiW;?04oE<8rt3s--FWZU&au
zzL(h&r6t=|h^cRLO5U6q3%WuT;<uv0fPY}64Y>B~!WB9_`;Pr)t(mwzjnjB!MQ=M$
zQakW$Cv~riTv1M@*{S#jqAo3_{_6UW!b2Pn!0}I|GZGQjndipIo#rG!H+<JoXaUs&
zOc-2l-s*x!t4KN?y(x6L;3czrN;@l!q1>Om|2(X)`gf%~O8C}>q9j8Vf<B=syITso
zwjHD0vN+OIw^U+i*~GD<TUR<QM)|RK4_FuIgs*3_9}*jbQ@o07Gwv#ttPl$I3~rYc
zovYK`Q<kDmDIJhHVNtoPuV8E2M$%~t`22B6+0~>QK{n0TE^>vvl0Aq7`VA{hrd0X_
zuyQPQBjvZzi$`Z~DkSbL%4l?pvuxY8d3(uxql3dIwGyl~530@2QDpDf-Xizn+?<oo
ztviDIN=WYGxFG}5ZWrHTj?l@m;PHcWg*gG8F_|vO^bAK$kKD23>qy7cLe1V7%ZY0i
zH6GeJt?aFN(Mw`aY%cA^&}epm^Yajf(Mw`Dr@ZE}t*UZuU(Cs>Hr8%4n`}q^o&M88
zf=X*~{3%RrYJ(X?Bygvm*5N8(e?FwvJd0XZ&`s!9;hm8wlK_Tt6@l2|I=1MUn`N9v
zZK{o)#)0JtcmsC`zkrtgP-|UZ*v6{7NKsYsmDv&9wTPB|ks84?^?8TVjyK(TA#@$p
za5%1CIz!S^3O%-PaX#wYyIpCmy3x!TDg6AgmwzlDZJRxwRXzC5d}nfQKoDm~Sypp}
zlkXPy*v=PYopaahc~i%iu%oQwTq-HPbTvJqvkH&mon2T`dTAi!)@^^`;}gJHiONy)
zijJqljjs!m%cQ~NjY-mq=XEZ+%0AVsyqamiI=J`t#wukK?cS_E>Sy-#C~t5&cdOeX
zKB;kjlEv(H8J(hXlgfRG42i0O=(*9v(N46pONUOZllf@oWhlr$Z`5hTr0!=NE-U@r
z@aYc3?4=4oY^3QcZxb88pu&cn^@|?n;%~k{^!QYE`Y?i{?=|Wj`EW+JY18rLCuq0#
z$%w4dBHwX5FQ0B{7F8s8gN4`oS-aER!cNsgTLoIy9k0B*O0S4xIPdd4Ceo@;OS6IZ
z2PKYVl^LaH#Uks+=J%QHcUuuhudF+|zgFvxR`l(eXCL;BDrcjV+cCGpq;p#`+wV!f
zlYLWDsehf__tL9-?W^#?O-h#@t@SMqc_C<xogIznPrOX8Urf{AT1_6AxtXGr{rvo$
z!KD+sRPBbOSnqN`S7`0Y9hU1#X*xEiEdX1mtj51n=}_T6)2eHR_gwy*^z^ur?Syfa
zRJ*a|_InV=^?j*NXo0+$K<n_*361N5s?PLl)emN!80i-@Z5WJwlJO)W;I8zC#}SL7
zj!PLcFDPmn^-=e{?|#ZCCzr0NT=;Tfa3v+&*k4k=`~B9kitM{+C*JMKOK*>wMg|3I
jCVlv;^@)dItP`-~y2LGImlTWt%EZdt)+~RuXY~I74ya{r
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..5d25f05d8791edceb048a8766c2028f094fdf414
GIT binary patch
literal 4517
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
Dm77h_
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..c6de26c9f9be668b57f9a77daa18ba570c59339a
GIT binary patch
literal 18697
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
TwgoNxXGQMLUQWjxLX-Xne0%((
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..bc13da3897dda1d7deca5bd25121229a5d843bc9
GIT binary patch
literal 8682
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
OcsVI$$zpM^&wl|uD;oU(
--- a/browser/themes/shared/incontentprefs/preferences.inc.css
+++ b/browser/themes/shared/incontentprefs/preferences.inc.css
@@ -218,42 +218,16 @@ treecol {
 }
 
 /* XXX This style is for bug 740213 and should be removed once that
    bug has a solution. */
 description > html|a {
   cursor: pointer;
 }
 
-#fxaProfileImage {
-  width: 60px;
-  height: 60px;
-  border-radius: 50%;
-  border-width: 5px;
-  border-color: red;
-  background-image: url(chrome://browser/skin/fxa/default-profile-image.svg);
-  background-size: contain;
-  cursor: pointer;
-  -moz-margin-end: 15px;
-}
-
-#fxaProfileImage:hover {
-  box-shadow: 0px 0px 0px 1px #0095DD;
-}
-
-#fxaProfileImage:active {
-  box-shadow: 0px 0px 0px 1px #ff9500;
-}
-
-#noFxaAccount {
-  /* Overriding the margins from the base preferences.css theme file.
-     These overrides can be simplified by fixing bug 1027174 */
-  margin: 0;
-}
-
 #weavePrefsDeck > vbox > label,
 #weavePrefsDeck > vbox > groupbox,
 #weavePrefsDeck > vbox > description,
 #weavePrefsDeck > vbox > #pairDevice > label,
 #weavePrefsDeck > #needsUpdate > hbox > #loginError,
 #weavePrefsDeck > #hasFxaAccount > vbox > label,
 #weavePrefsDeck > #hasFxaAccount > hbox:not(#tosPP-normal) > label {
   /* no margin-start for elements at the begin of a line */
@@ -392,25 +366,167 @@ description > html|a {
   from { opacity: 0; }
   to   { opacity: 1; }
 }
 
 /**
  * Sync
  */
 
+#fxaProfileImage {
+  width: 60px;
+  max-height: 60px;
+  border-radius: 50%;
+  background-image: url(chrome://browser/skin/fxa/default-avatar.png);
+  background-size: contain;
+  margin-inline-end: 15px;
+}
+
+#fxaProfileImage.actionable {
+  cursor: pointer;
+}
+
+#fxaProfileImage.actionable:hover {
+  box-shadow: 0px 0px 0px 1px #0095DD;
+}
+
+#fxaProfileImage.actionable:hover:active {
+  box-shadow: 0px 0px 0px 1px #ff9500;
+}
+
+#noFxaAccount {
+  /* Overriding the margins from the base preferences.css theme file.
+     These overrides can be simplified by fixing bug 1027174 */
+  margin: 0;
+}
+
+#noFxaGroup {
+  -moz-box-flex: 1;
+}
+
+#noFxaGroup > vbox {
+  -moz-box-align: start;
+}
+
 #fxaSyncEngines > vbox:first-child {
   margin-right: 80px;
 }
 
 #fxaSyncComputerName {
-  margin-left: 0px;
+  margin-inline-start: 0px;
+  width: 500px;
 }
 
 #tosPP-small-ToS {
-  margin-bottom: 1em;
+  margin-bottom: 14px;
+}
+
+#noFxaCaption {
+  font-weight: bold;
+  margin-bottom: 11px;
+}
+
+.fxaSyncIllustration {
+  margin-top: 35px;
+}
+
+#syncOptions caption {
+  margin-bottom: 11px;
+}
+
+#fxaDeviceName {
+  margin-bottom: 27.5px;
+}
+
+#noFxaDescription {
+  margin-bottom: 20px !important;
+}
+
+.separator {
+  border-bottom: 1px solid var(--in-content-header-border-color);
+}
+
+.fxaAccountBox {
+  border: 1px solid #D1D2D3;
+  border-radius: 5px;
+  padding: 14px 20px 14px 14px;
+}
+
+#signedOutAccountBoxTitle {
+  margin-inline-start: 6px !important;
+  font-weight: bold;
+  margin-bottom: 11px;
+}
+
+.fxaAccountBox button {
+  padding-left: 11px;
+  padding-right: 11px;
+}
+
+.fxaSyncIllustration {
+  width: 231px;
+  max-height: 200px;
+  list-style-image: url(chrome://browser/skin/fxa/sync-illustration.png)
+}
+
+.fxaFirefoxLogo {
+  list-style-image: url(chrome://browser/skin/fxa/logo.png);
+  max-width: 64px;
+  margin-inline-end: 14px;
+}
+
+#noFxaAccount .fxaMobilePromo {
+  margin-bottom: 55px;
+}
+
+#hasFxaAccount .fxaMobilePromo {
+  margin-bottom: 41px;
+  margin-top: 27.5px;
+}
+
+.fxaMobilePromo > label {
+  margin-inline-start: 0;
+}
+
+#hasFxaAccount .fxaAccountBoxButtons {
+  margin-top: 11px;
 }
 
 #fxaLoginRejectedWarning {
   list-style-image: url(chrome://browser/skin/warning.svg);
   filter: drop-shadow(0 1px 0 hsla(206, 50%, 10%, .15));
   margin: 4px 8px 0px 0px;
 }
+
+#syncOptions {
+  margin-bottom: 27.5px;
+}
+
+.androidLogo {
+  list-style-image: url(chrome://browser/skin/fxa/android.png);
+  max-width: 24px;
+  margin-top: -4px;
+  margin-inline-end: 4px;
+}
+
+#tosPP-small {
+  margin-bottom: 20px;
+}
+
+.androidAttribution {
+  font-size: 12px;
+  color: #D1D2D3;
+}
+
+@media (min-resolution: 1.1dppx) {
+  .fxaSyncIllustration {
+    list-style-image: url(chrome://browser/skin/fxa/sync-illustration@2x.png)
+  }
+  .fxaFirefoxLogo {
+    list-style-image: url(chrome://browser/skin/fxa/logo@2x.png);
+  }
+  .androidLogo {
+    list-style-image: url(chrome://browser/skin/fxa/android@2x.png);
+  }
+  #fxaProfileImage {
+    background-image: url(chrome://browser/skin/fxa/default-avatar@2x.png);
+  }
+}
--- a/browser/themes/windows/jar.mn
+++ b/browser/themes/windows/jar.mn
@@ -302,17 +302,24 @@ browser.jar:
         skin/classic/browser/preferences/saveFile.png                (preferences/saveFile.png)
         skin/classic/browser/preferences/saveFile-XP.png             (preferences/saveFile-XP.png)
 *       skin/classic/browser/preferences/preferences.css             (preferences/preferences.css)
 *       skin/classic/browser/preferences/in-content/preferences.css  (preferences/in-content/preferences.css)
 *       skin/classic/browser/preferences/in-content/dialog.css       (preferences/in-content/dialog.css)
         skin/classic/browser/preferences/in-content/favicon.ico      (../shared/incontentprefs/favicon.ico)
         skin/classic/browser/preferences/in-content/icons.svg        (../shared/incontentprefs/icons.svg)
         skin/classic/browser/preferences/in-content/search.css       (../shared/incontentprefs/search.css)
-        skin/classic/browser/fxa/default-profile-image.svg   (../shared/fxa/default-profile-image.svg)
+        skin/classic/browser/fxa/default-avatar.png                  (../shared/fxa/default-avatar.png)
+        skin/classic/browser/fxa/default-avatar@2x.png               (../shared/fxa/default-avatar@2x.png)
+        skin/classic/browser/fxa/logo.png                            (../shared/fxa/logo.png)
+        skin/classic/browser/fxa/logo@2x.png                         (../shared/fxa/logo@2x.png)
+        skin/classic/browser/fxa/sync-illustration.png               (../shared/fxa/sync-illustration.png)
+        skin/classic/browser/fxa/sync-illustration@2x.png            (../shared/fxa/sync-illustration@2x.png)
+        skin/classic/browser/fxa/android.png                         (../shared/fxa/android.png)
+        skin/classic/browser/fxa/android@2x.png                      (../shared/fxa/android@2x.png)
         skin/classic/browser/preferences/applications.css            (preferences/applications.css)
         skin/classic/browser/preferences/aboutPermissions.css        (preferences/aboutPermissions.css)
         skin/classic/browser/preferences/search.css                  (preferences/search.css)
         skin/classic/browser/preferences/checkbox.png                (preferences/checkbox.png)
         skin/classic/browser/preferences/checkbox-aero.png           (preferences/checkbox-aero.png)
         skin/classic/browser/preferences/checkbox-classic.png        (preferences/checkbox-classic.png)
         skin/classic/browser/preferences/checkbox-xp.png             (preferences/checkbox-xp.png)
         skin/classic/browser/social/services-16.png                  (social/services-16.png)