Bug 1534475 - Use a responsive monitor frame in "Set As Desktop Background" preview. r=Gijs
☠☠ backed out by ca8a2a294a18 ☠ ☠
authorIan Moody <moz-ian@perix.co.uk>
Wed, 13 Mar 2019 16:24:40 +0000
changeset 521771 e5f1bcb6046e
parent 521770 011f952132f0
child 521772 685feec7f812
push id10867
push userdvarga@mozilla.com
push dateThu, 14 Mar 2019 15:20:45 +0000
treeherdermozilla-beta@abad13547875 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersGijs
bugs1534475
milestone67.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 1534475 - Use a responsive monitor frame in "Set As Desktop Background" preview. r=Gijs Currently for any screen with a ratio 1.6 or above, the preview uses a 16:10 image. However, the majority of Fx users have a screen that is 16:9[0], so for most users the preview shows images distorted (compressed horizontally). Originally I just added a new 16:9 version of the monitor image, but then I realised I could save on filesize _and_ make it responsive to whatever the user's screen actually is, rather than using arbitrary presets, by using border-image. The new image files are just sliced up versions of the original monitor.png files, zopfli compressed to match (though with the power indicator dropped from the Linux/Windows version to avoid distorting it). The combined filesize savings seem to be 8.5KiB on macOS and 6.5KiB on Linux/Windows. With the removal of the use of margins on the canvas we no longer need the platform-specific setDesktopBackground.css file. [0] https://data.firefox.com/dashboard/hardware As of 3rd March 2019 the top three resolutions, 1366x768, 1080p, & 1600x900, are all 16:9 and make up 67% of the userbase. Differential Revision: https://phabricator.services.mozilla.com/D23114
browser/components/shell/content/setDesktopBackground.js
browser/components/shell/content/setDesktopBackground.xul
browser/components/shell/test/browser_setDesktopBackgroundPreview.js
browser/themes/linux/jar.mn
browser/themes/linux/monitor-base.png
browser/themes/linux/monitor-border.png
browser/themes/linux/monitor.png
browser/themes/linux/monitor_16-10.png
browser/themes/linux/setDesktopBackground.css
browser/themes/osx/jar.mn
browser/themes/osx/monitor-base.png
browser/themes/osx/monitor-border.png
browser/themes/osx/monitor.png
browser/themes/osx/monitor_16-10.png
browser/themes/osx/setDesktopBackground.css
browser/themes/shared/jar.inc.mn
browser/themes/shared/setDesktopBackground.css
browser/themes/windows/jar.mn
browser/themes/windows/monitor-base.png
browser/themes/windows/monitor-border.png
browser/themes/windows/monitor.png
browser/themes/windows/monitor_16-10.png
browser/themes/windows/setDesktopBackground.css
--- a/browser/components/shell/content/setDesktopBackground.js
+++ b/browser/components/shell/content/setDesktopBackground.js
@@ -20,18 +20,20 @@ var gSetBackground = {
 
   load() {
     this._canvas = document.getElementById("screen");
     this._screenWidth = screen.width;
     this._screenHeight = screen.height;
     if (AppConstants.platform == "macosx") {
       document.documentElement.getButton("accept").hidden = true;
     }
-    if (this._screenWidth / this._screenHeight >= 1.6)
-      document.getElementById("monitor").setAttribute("aspectratio", "16:10");
+    // Cap ratio to 4 so the dialog width doesn't get ridiculous. Highest
+    // regular screens seem to be 32:9 (3.56) according to Wikipedia.
+    let screenRatio = Math.min(this._screenWidth / this._screenHeight, 4);
+    this._canvas.width = this._canvas.height * screenRatio;
 
     if (AppConstants.platform == "win") {
       // Hide fill + fit options if < Win7 since they don't work.
       var version = Services.sysinfo.getProperty("version");
       var isWindows7OrHigher = (parseFloat(version) >= 6.1);
       if (!isWindows7OrHigher) {
         document.getElementById("fillPosition").hidden = true;
         document.getElementById("fitPosition").hidden = true;
--- a/browser/components/shell/content/setDesktopBackground.xul
+++ b/browser/components/shell/content/setDesktopBackground.xul
@@ -58,21 +58,19 @@
       <label value="&color.label;"/>
       <html:input id="desktopColor"
                   type="color"
                   onchange="gSetBackground.updateColor(this.value);"/> 
     </hbox>
 #endif
 
     <vbox align="center">
-      <stack>
-        <!-- if width and height are not present, they default to 300x150 and stretch the stack -->
-        <html:canvas id="screen" width="1" height="1" role="presentation"/>
-        <image id="monitor"/>
-      </stack>
+      <!-- default to 16:9, will be adjusted to match user's actual screen -->
+      <html:canvas id="screen" width="202" height="114" role="presentation"/>
+      <image id="monitor-base"/>
     </vbox>
 
 #ifdef XP_MACOSX
     <separator/>
 
     <hbox align="right">
       <button id="setDesktopBackground"
               label="&setDesktopBackground.title;"
--- a/browser/components/shell/test/browser_setDesktopBackgroundPreview.js
+++ b/browser/components/shell/test/browser_setDesktopBackgroundPreview.js
@@ -34,27 +34,24 @@ add_task(async function() {
     // Need to explicitly close the menu (and wait for it), otherwise it fails
     // verify/later tests
     const menuClosed = BrowserTestUtils.waitForPopupEvent(menu, "hidden");
     menu.hidePopup();
 
     const win = await dialogLoad;
 
     /* setDesktopBackground.js does a setTimeout to wait for correct
-       dimensions. If we don't wait here we could read the monitor image
-       URL before it's changed to the widescreen version */
+       dimensions. If we don't wait here we could read the preview dimensions
+       before they're changed to match the screen */
     await TestUtils.waitForTick();
 
-    const img = win.document.getElementById("monitor");
-    const measure = new Image();
-    const measureLoad = BrowserTestUtils.waitForEvent(measure, "load");
-    measure.src =
-      getComputedStyle(img).listStyleImage.slice(4, -1).replace(/"/g, "");
-    await measureLoad;
+    const canvas = win.document.getElementById("screen");
+    // Only test to two decimal places
+    const screenRatio = Math.floor((screen.width / screen.height) * 100);
+    const previewRatio = Math.floor((canvas.clientWidth / canvas.clientHeight) * 100);
 
-    Assert.equal(img.clientWidth, measure.naturalWidth, "Monitor image correct width");
-    Assert.equal(img.clientHeight, measure.naturalHeight, "Monitor image correct height");
+    Assert.equal(previewRatio, screenRatio, "Preview's aspect ratio matches screen's");
 
     win.close();
 
     await menuClosed;
   });
 });
--- a/browser/themes/linux/jar.mn
+++ b/browser/themes/linux/jar.mn
@@ -4,22 +4,21 @@
 
 browser.jar:
 % skin browser classic/1.0 %skin/classic/browser/
 #include ../shared/jar.inc.mn
   skin/classic/browser/sanitizeDialog.css
 * skin/classic/browser/syncedtabs/sidebar.css     (syncedtabs/sidebar.css)
 * skin/classic/browser/browser.css
 * skin/classic/browser/compacttheme.css
-  skin/classic/browser/monitor.png
-  skin/classic/browser/monitor_16-10.png
+  skin/classic/browser/monitor-base.png
+  skin/classic/browser/monitor-border.png
 * skin/classic/browser/pageInfo.css
   skin/classic/browser/pageInfo.png
 * skin/classic/browser/searchbar.css
-  skin/classic/browser/setDesktopBackground.css
   skin/classic/browser/slowStartup-16.png
   skin/classic/browser/webRTC-indicator.css  (../shared/webRTC-indicator.css)
 * skin/classic/browser/controlcenter/panel.css        (controlcenter/panel.css)
 * skin/classic/browser/customizableui/panelUI.css (customizableui/panelUI.css)
 * skin/classic/browser/downloads/allDownloadsView.css   (downloads/allDownloadsView.css)
 * skin/classic/browser/downloads/downloads.css        (downloads/downloads.css)
   skin/classic/browser/notification-icons/geo-blocked.svg  (notification-icons/geo-blocked.svg)
   skin/classic/browser/notification-icons/geo-detailed.svg (notification-icons/geo-detailed.svg)
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..45a241021713df9f21b7415019e62392ca1b569c
GIT binary patch
literal 1087
zc$@)01i<@=P)<h;3K|Lk000e1NJLTq003S9000yS1ONa4t{6h^000CANkl<ZcmZN$
zAPq1|^syBH+AE7KTW%f-f3jV5s_CBo|1dK%^C)?XOv4Wme6%|X%`yu!r@6bj%C=HV
zOM|*$=Iy%;DqXED$v$2AJ&<_kBHrU?An@~`Qu+PxGh+w-CiqW$j{JT|zpcBlV9Dlr
zn=8xpW!+$N>u%-uLE*|ryEnt`{_fGvhudtk!!i29;^t_%;F3#DT+m$5oRiMhvpAzU
zO*SMc3eFEWBJq2m=VDd?F$$V>Z~T(a<&*sB(MS5h?)z`Q&HD_eif=Bx^TY$oTgwgY
z#nM$2A7Jwwm3`iz=l8(boX3JW1o2sPA_47(cjUGH)i+LVy+oE9o;v55@$^xPs(FAa
zGtAFXls(>&LlAx%bf!cB`F@XcIg1XRn-xb@0Sy5HfhdXe*_SWKLt977N+hBLM*FCC
zf(#@wLIsq9u*awDl0^V0KS6vz1&1PFgy<%-u)-PqpFsAGH|8NYs04~kq*BNPUF@b^
zQCYBHowaFnENBTtl2JTVWVAG(XP4e(D-diwqURVjuVNCF3Lq}i{Vcjk%M(Wg`$wQ<
zb0WY9G&Cdx!9byBpIvs?W0yk)8Yv`9WJ@ylfKcsZHVY&6Wns2e@URgBN<eI=305-2
zMn*B1x4Mu4C=66aviVm}trEdw6tk*(jHv5ba6EB9fkJ9%Sz$p(J29F=AX<H@)iIF0
z>SAHUcM!qO-d@z~k<sO=ONZh<Sj{0&sovM>!lBIR0xOtbFrAsfqC+K+mI$p~m{l6@
zKm#ToGLd2o0JbU$MD#oU&J}+nUQvh6A{K-|aJ!ma$Yk$jvh=G_5sOzzh}V40)3R@C
zFE1bLWMS2BEKsmfJ#4jowqO;&*5H-^2)JDk3dJoh-_p!PBPQmX$le1e;61m?Xk}}>
zcxwzqEAs)FLyk@gn|y_Auw;Y(vB^3ctWI-B=l8s`ZbVB?=!g>`xGbf``{CCrquySu
zrp@fPLjde+;g~`;;Q_o%>M@0$p3IRw)IAO+?z6)d+qO4co2USLW|+gDtaT$<BGD6x
zHdefj;y<!pAD3MH=?dAe0wfa)1IJ{FaiDq{gZYmf+x*jzP-X~T*EJHW6Bm|%KVp|D
zK&6nqO2JQRtj1}WxN2t*AQQaOg<@X#3e_)3q@`HA(Qdig_<r#RJj~r(&Uu{9|LaP%
z|2B{~v}#+eX$d5ogV#DC6hGmu*O^dz7bX)U=GPz;1cS>8jGkg~4(P=1M9&sq@DXqF
z3U3RiVwL~1w2N<KC9G%{x|NBwqv_h(go)BNO>An6u_TEhYHZUOk;1f>(YhhA08pwZ
z09uNIjwKf@A?w6kHLE=kMh0Jd8%I9xPh-!x!&e+I!`I$S2#*FjXu<#h002ovPDHLk
FV1ibK{8In`
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..f05dcb783923dcd39a8b5c2425def6a63edbfee6
GIT binary patch
literal 3268
zc%03acT^Kd9>+tkfk1>%0ukvD2%SJ^5+I>SAaqD*0-*;Kq{AXAVq+BrLW{17EGr_g
z(nJI)S*eRsRC-W?h9U$7iNM9(cX#jZz5D+@-zjh2%x~Vz_xHz4ftxD^C@d!o004lF
zSUWtYujkZDf;^m-sq^Ut0Kg4)bMdt247s?txVgD`czAeudHMMG1Ox;G1qFqKghWI{
zfIv}kad8j`Bq1RI27`|rIU*$`B`qxtfk0$rWaQ=Lp-@hNDkvx@Dk{QYu%kzh9y_L_
ztb9yGMMX_bO<i40LqlCdLqk(jQ(IdL4u`9&tE;N2Dk&Y6lamF5C545B`T6;km6bW6
zN=iz{j&TB2Im@+wz*(+?K<F757#JBDnf$=i><8u+Kd`j6wmyFRxUH?Ny}iAI1IF<O
zPA)DdTwPt=-QDqc4^K}|A0HoIUq63;|A2r1B9Ryr6cijB91;>578VvB9!?^WA|s=s
zqN4vICiVw$e-R%aPv*dxClH97J-ocUIa}gzZZ0k^Sga!!i*;~tu(Pv6qtRAYRwxt-
zi9{M3n;07#>+9?5>gsA~X-P^-{_T^jtgM`z90GwbFfg>XwjmM&IY$T$JsBAp850v5
z5kU$MkMQ;N_4M?@;c(8*E=Z)Ava$-tP9P8{CML%5o?|&4kLTn;R8$m$!8kiR2Lupe
zVq!SA;aoj5G&CY2A|xb4SXji?7Hwx|&&d)et$ByzoFXO$)Ya9|*Vi*NG(;jzEi6!$
zmK^J>Y;0_7ZI9dA+c`McW3e3fu+Gj-uC6EC+}tJ`Uf$ru-%i52dK~^g1K{HJsJ#~o
z00?zC+8y^y<yx!Y^CU!7VKxpk5O;_Tb${Ao-H&)FI8b=$%>(Tj=N>Yzk9}24f%s2l
zoeL}ke>|bx{VS+1D#iBMM$2H8iTTpI3Ko&TES`P9AZLomlv1AUuE(Zs=7BV<&@WHF
z;=`ToKvdqiHy)+r1p_<tt14~RX}+hWaS2>A=((}$?sTc-4LqS3e43ZCH1OMX3)?`(
zrV&<>uy+wbt${iNgA$#5rs0<F^@pxxxV`4`PD-83yq+qTWM&}@_`XWJ@@k&W_pUjQ
zl330|x*yRGwr--;!P5>F_DJHae%FA+F28iaChh#V;``h0Gq#>V2ooe-4*;X{(xa4*
z*_tHGP3B1Qby!;O^FA?ntySWwVMpz-J-a!@@0(xyGsb%lDRMzBx=SSoV)ugBHGo1M
zz=&CR$05;XEjX_GHh;EAPkiUs;>iJ_Ce*{3>z~ivBD6;N3zWdJixi`8Ps6if*8&Y=
z%&p9rvBk`17nVjB4bW<a08p*w?m1Sf+Pvx=D6zy6Zz3$ucCGFIGDUR4^yHDdDtDmG
zDZ`MHBbZk=Z|E#fH_vK~?WHAJn$CfwmSoZ5Ie+R6XPx67;d+AZC`p<9yk6H5ce%C4
zU0TYoHG*1)Y+bd=Z=+UMO0#$DePGm?ZNTNBmF&v&V-pHe?(~z<{AH+-ER%VPhd6U1
z!|vu)<!qy>5U#_YO<U*L5r$_Dwn&Iu)tA;=zI<D&Jwi{{B)WyxrziXt_D)~G5wJBb
zmVVgWa<}f5LH)e0@Ch1jjaZO`YY^PSQ;WBs_yDQU56@xMsEIr&ZPAlLD!qMWw$*v0
zCff^rh4^YAYEA7vl`U}a4Q9vKcUSH|$Xa^|(X}nIHwg$}LbS%dq|B<Gbi+y_jsX@+
z^Fo44Su&pkJ<~+G)<y{Ut={wRrZPb^dHqIR%OuqYwGQRC^pZcWv<IfI=MHt*yno$r
z`dQ~uzxhOFcViz=Xi%$eVBvu<&)n_qL>Y8@LOQ#i;>R1?<Q=lHh?~ogjw$GLqRzaX
z=SIxjPS_}Kt4j3$_2;`o=njX{vII?P{l>;<BQyF!39Mc(d-sIpIAhhXOyFoiq111F
z3$Gj$2t^yxD7BgQcgB|WE8F+9HOikTi+6V4{cs^CRxa#u-~4i<awBD)9ycf4#2tLP
zw@a_`gR`hjoj-{#Kh!*!_z_b_Z;;eA7;1puF&v;Xrvna>lk*K@U-RH1UyFq{X7xU*
zUa(MPIH#@?s)i6+>sS@9(94C>iJ4n5IaxsQJ%^!{QaGjakC*-XlhfJdCOJz_ric%c
za*eW%E=!IgN1FLmZPv!Dj{_tv94NZcQP+dsc0kuRl0MOVGg^}2{)I6Kg^xpwNDO~!
z9{ndnLO-PK)7$i_xi>^88aN`;aBa0f+Td$&V5Op1Lr(oKBD$BaB!Xsyr$VU-d?yn?
zr~3)f6s9&{NJyN|DtozF;&Ys9%WSvG?>X+S(4>5M`K@m*)sM0eKAu+(Qp{FcJF-b+
z&!8+Z*^)CN@I+%;<H(LIj`@71SE@wDjc81mpv`U{`akzWFO_Sp2D74J*2J4M*%op<
z&(p<-%|sOm3d2h@v~)K@KTM6GbJo9`Oj%W9J)iE!9L$VGAJxl4nPl{^&QCgt!!w`a
z#ObPl&A4E}qK1Vb?JV+=@qjlEK&Lcu2+SLdT$bRES8U@(E`!TRoljUpDG77CPJ&lT
zzvbpCN$ko0m)Mn{J?64kj*z9u-(nVpWEpIm{%@_~fNT%+s4Yh?_QHIrqWi#qX+K-C
z8S!FE2R{GL=09S0j9pjA$UvEEkPB7kf9T80$5yicJ`Jm^SJWm{tRFgGH}5DvOo-#6
zWsLe(%*^<k&7Fz!9DmWW<S3pl^k>Q$)<9>!1;#K;tf_3i{bS0sOFXItb@v4hf++A#
z(ECMS!cidwMeMtny|Q@UvIPF=$$iJ9?`^9#)u8K0*!6n?23ZVm^)ZQwLW?RC-aO(m
zGU`BmrSS2Jo+FrDL|c+H&HXOjxp1P6`gHw~k`MyT&HHAG%FrMqu`G3w`T*WX6VsE!
zH_?NmrKV+>ON%4x>$$lH#S;~Zu5lITfQ8$S>T&6X)}ucmc4h6YUR^=#a#dN+m5<kN
zWQFm##Jd2g5y{SnT{bBxj75j}b7^dfv<8Xg&8icVCboRWVe@)A0FTMYQ3*IVe@P~k
zM=#Hr(x^T?J)8_h@{(ged*{E|2m6~fg6BUXNSIp8s3ucsBvpx8&`tVMk&Z{T&ZMND
zx%O}zx9TuXA*U)s&Hr3{_-x;?oQ~Jy(X;9d16>T<9-m^?bIEW&zB4Hs;s3T;IERKA
z7`$;ga?}6isTAawg;%jTIn6}kYRsdDfVtia4HX4=MhEOt<~s~}4&`$RZrYq{$|ZGc
zn7x8$uTpih^pfA`knU%SKvcs&z}k9zBIOTr3efzwA>qp_ZS}=K(yo8c^SJJ-p0E1P
zrBy?Z?8r3c?Yd9R2KY?T+QFU*wN;?Qw4iHqij}lnQM<mr&CS$A{j)<{BOW+J8~Xr!
z!V^|Y?=|21^eO%6Yz^bK(6k4y>G>9+cQx<(`N%BaIvVt+<%^rqK}w)4F)lK#f1dAg
z-yr5S#5(*pF{8yc*cd~^_(AI_WOCQB0Y&GvTJ;uDegjIc)TK_}1V_%}HF#=#!^zUy
zAxr?@<8!LEdVvkvS&A}$JW$o1YQD7<0GKn5?@$1ZJg?bG9#z*f1e_L~G~emm32nJr
zUNI{x?~U(BNEV0~q|2;6XgXswZ9qu&x^(sad(3H#DiB@6?nuFchAp_^kE_d?v)E6y
zwTs28?t=%vABQ3g@1Fc}zE84;jv9X1Pd1!mTQQ;q62Ja3T7mhrlb~pXtuEslZJS7%
z*uk1ztLfOgeQ)9^1ai-!vc8EeCvNQbGRM-m?sCEBqIYnwD=p8M%Q5F$MJ`+nsuI|L
zR@DNWL#KCXXKa1kTPN&1WWl{2s6-2I4YMZ_tgkZGV$DhIJ@wz{eb{tg#qZuK-4N+c
z3o<*yY7{zrcAJjbmJ}T3Ga6jlG%Ar&zN2YzFVJlCyZmT=y-sT%&6+K6rmx0KJENDP
z?L6XwB29grn9e$6<(mu!PL@*k*@a_8q?!wFTh^h6U+>=dJ%6I?g9kaSD80#akbUF)
w*v*pXnNESfzTVs3@Pe^Ec0+D{d-omD&~AgM=(3aK{5t`T_O5o1Y=h7K137gv*Z=?k
deleted file mode 100644
index 0f8c616f78d5c65b2c190f9364c1a48941d21c61..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index f6e87b14c12ff131697a1fc2e47d5fc3bebcfae5..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
--- a/browser/themes/osx/jar.mn
+++ b/browser/themes/osx/jar.mn
@@ -12,19 +12,18 @@ browser.jar:
 * skin/classic/browser/pageInfo.css
 * skin/classic/browser/searchbar.css
   skin/classic/browser/slowStartup-16.png
   skin/classic/browser/webRTC-indicator.css
 * skin/classic/browser/controlcenter/panel.css        (controlcenter/panel.css)
 * skin/classic/browser/customizableui/panelUI.css    (customizableui/panelUI.css)
 * skin/classic/browser/downloads/allDownloadsView.css (downloads/allDownloadsView.css)
 * skin/classic/browser/downloads/downloads.css              (downloads/downloads.css)
-  skin/classic/browser/setDesktopBackground.css
-  skin/classic/browser/monitor.png
-  skin/classic/browser/monitor_16-10.png
+  skin/classic/browser/monitor-base.png
+  skin/classic/browser/monitor-border.png
   skin/classic/browser/notification-icons/geo-blocked.svg  (notification-icons/geo-blocked.svg)
   skin/classic/browser/notification-icons/geo.svg          (notification-icons/geo.svg)
   skin/classic/browser/places/allBookmarks.png              (places/allBookmarks.png)
 * skin/classic/browser/places/sidebar.css                   (places/sidebar.css)
   skin/classic/browser/places/organizer.css                 (places/organizer.css)
   skin/classic/browser/places/toolbar.png                   (places/toolbar.png)
   skin/classic/browser/places/toolbarDropMarker.png         (places/toolbarDropMarker.png)
   skin/classic/browser/places/editBookmark.css              (places/editBookmark.css)
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..7b61c6b45b1cb064d5550afcf43a3d7d2a80c578
GIT binary patch
literal 1656
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
Cs!!7Z
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..54337d8bb0f6d819b2a37c41dd23c5311077978c
GIT binary patch
literal 4125
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
be*4WY#F5_{uf%Nq00000NkvXXu0mjfP%G46
deleted file mode 100644
index a1c485039fe1e8589fa45aa9ed6dc3d62ef4a17e..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index cf0b555d18f9902b8cf56b2daacfc6353e89b583..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
--- a/browser/themes/osx/setDesktopBackground.css
+++ /dev/null
@@ -1,18 +0,0 @@
-/* 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/. */
-
-@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
-@namespace html url("http://www.w3.org/1999/xhtml");
-
-html|canvas#screen {
-  margin: 12px 11px 38px;
-}
-
-#monitor {
-  list-style-image: url("chrome://browser/skin/monitor.png");
-}
-
-#monitor[aspectratio="16:10"] {
-  list-style-image: url("chrome://browser/skin/monitor_16-10.png");
-}
--- a/browser/themes/shared/jar.inc.mn
+++ b/browser/themes/shared/jar.inc.mn
@@ -11,16 +11,17 @@
   skin/classic/browser/aboutNetError-new.css                   (../shared/aboutNetError-new.css)
   skin/classic/browser/blockedSite.css                         (../shared/blockedSite.css)
   skin/classic/browser/error-pages.css                         (../shared/error-pages.css)
   skin/classic/browser/aboutRestartRequired.css                (../shared/aboutRestartRequired.css)
 * skin/classic/browser/aboutSessionRestore.css                 (../shared/aboutSessionRestore.css)
   skin/classic/browser/aboutLibrary.css                        (../shared/aboutLibrary.css)
   skin/classic/browser/aboutTabCrashed.css                     (../shared/aboutTabCrashed.css)
   skin/classic/browser/aboutWelcomeBack.css                    (../shared/aboutWelcomeBack.css)
+  skin/classic/browser/setDesktopBackground.css                (../shared/setDesktopBackground.css)
   skin/classic/browser/addons/addon-install-blocked.svg        (../shared/addons/addon-install-blocked.svg)
   skin/classic/browser/addons/addon-install-confirm.svg        (../shared/addons/addon-install-confirm.svg)
   skin/classic/browser/addons/addon-install-downloading.svg    (../shared/addons/addon-install-downloading.svg)
   skin/classic/browser/addons/addon-install-error.svg          (../shared/addons/addon-install-error.svg)
   skin/classic/browser/addons/addon-install-installed.svg      (../shared/addons/addon-install-installed.svg)
   skin/classic/browser/addons/addon-install-warning.svg        (../shared/addons/addon-install-warning.svg)
   skin/classic/browser/addons/addon-private-browsing.svg       (../shared/addons/addon-private-browsing.svg)
   skin/classic/browser/controlcenter/3rdpartycookies.svg       (../shared/controlcenter/3rdpartycookies.svg)
rename from browser/themes/linux/setDesktopBackground.css
rename to browser/themes/shared/setDesktopBackground.css
--- a/browser/themes/linux/setDesktopBackground.css
+++ b/browser/themes/shared/setDesktopBackground.css
@@ -1,18 +1,16 @@
 /* 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/. */
 
 @namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
 @namespace html url("http://www.w3.org/1999/xhtml");
 
 html|canvas#screen {
-  margin: 12px 11px 32px;
+  border-style: solid;
+  border-width: 12px 11px;
+  border-image: url("chrome://browser/skin/monitor-border.png") 12 11 stretch;
 }
 
-#monitor {
-  list-style-image: url("chrome://browser/skin/monitor.png");
+#monitor-base {
+  list-style-image: url("chrome://browser/skin/monitor-base.png");
 }
-
-#monitor[aspectratio="16:10"] {
-  list-style-image: url("chrome://browser/skin/monitor_16-10.png");
-}
--- a/browser/themes/windows/jar.mn
+++ b/browser/themes/windows/jar.mn
@@ -4,22 +4,21 @@
 
 browser.jar:
 % skin browser classic/1.0 %skin/classic/browser/
 #include ../shared/jar.inc.mn
   skin/classic/browser/sanitizeDialog.css
 * skin/classic/browser/syncedtabs/sidebar.css     (syncedtabs/sidebar.css)
 * skin/classic/browser/browser.css
 * skin/classic/browser/compacttheme.css
-  skin/classic/browser/monitor.png
-  skin/classic/browser/monitor_16-10.png
+  skin/classic/browser/monitor-base.png
+  skin/classic/browser/monitor-border.png
   skin/classic/browser/pageInfo.css
   skin/classic/browser/pageInfo.png
 * skin/classic/browser/searchbar.css
-  skin/classic/browser/setDesktopBackground.css
   skin/classic/browser/slowStartup-16.png
   skin/classic/browser/webRTC-indicator.css  (../shared/webRTC-indicator.css)
 * skin/classic/browser/controlcenter/panel.css                 (controlcenter/panel.css)
 * skin/classic/browser/customizableui/panelUI.css       (customizableui/panelUI.css)
 * skin/classic/browser/downloads/allDownloadsView.css   (downloads/allDownloadsView.css)
 * skin/classic/browser/downloads/downloads.css                 (downloads/downloads.css)
   skin/classic/browser/notification-icons/geo-blocked.svg      (notification-icons/geo-blocked.svg)
   skin/classic/browser/notification-icons/geo-detailed.svg     (notification-icons/geo-detailed.svg)
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..45a241021713df9f21b7415019e62392ca1b569c
GIT binary patch
literal 1087
zc$@)01i<@=P)<h;3K|Lk000e1NJLTq003S9000yS1ONa4t{6h^000CANkl<ZcmZN$
zAPq1|^syBH+AE7KTW%f-f3jV5s_CBo|1dK%^C)?XOv4Wme6%|X%`yu!r@6bj%C=HV
zOM|*$=Iy%;DqXED$v$2AJ&<_kBHrU?An@~`Qu+PxGh+w-CiqW$j{JT|zpcBlV9Dlr
zn=8xpW!+$N>u%-uLE*|ryEnt`{_fGvhudtk!!i29;^t_%;F3#DT+m$5oRiMhvpAzU
zO*SMc3eFEWBJq2m=VDd?F$$V>Z~T(a<&*sB(MS5h?)z`Q&HD_eif=Bx^TY$oTgwgY
z#nM$2A7Jwwm3`iz=l8(boX3JW1o2sPA_47(cjUGH)i+LVy+oE9o;v55@$^xPs(FAa
zGtAFXls(>&LlAx%bf!cB`F@XcIg1XRn-xb@0Sy5HfhdXe*_SWKLt977N+hBLM*FCC
zf(#@wLIsq9u*awDl0^V0KS6vz1&1PFgy<%-u)-PqpFsAGH|8NYs04~kq*BNPUF@b^
zQCYBHowaFnENBTtl2JTVWVAG(XP4e(D-diwqURVjuVNCF3Lq}i{Vcjk%M(Wg`$wQ<
zb0WY9G&Cdx!9byBpIvs?W0yk)8Yv`9WJ@ylfKcsZHVY&6Wns2e@URgBN<eI=305-2
zMn*B1x4Mu4C=66aviVm}trEdw6tk*(jHv5ba6EB9fkJ9%Sz$p(J29F=AX<H@)iIF0
z>SAHUcM!qO-d@z~k<sO=ONZh<Sj{0&sovM>!lBIR0xOtbFrAsfqC+K+mI$p~m{l6@
zKm#ToGLd2o0JbU$MD#oU&J}+nUQvh6A{K-|aJ!ma$Yk$jvh=G_5sOzzh}V40)3R@C
zFE1bLWMS2BEKsmfJ#4jowqO;&*5H-^2)JDk3dJoh-_p!PBPQmX$le1e;61m?Xk}}>
zcxwzqEAs)FLyk@gn|y_Auw;Y(vB^3ctWI-B=l8s`ZbVB?=!g>`xGbf``{CCrquySu
zrp@fPLjde+;g~`;;Q_o%>M@0$p3IRw)IAO+?z6)d+qO4co2USLW|+gDtaT$<BGD6x
zHdefj;y<!pAD3MH=?dAe0wfa)1IJ{FaiDq{gZYmf+x*jzP-X~T*EJHW6Bm|%KVp|D
zK&6nqO2JQRtj1}WxN2t*AQQaOg<@X#3e_)3q@`HA(Qdig_<r#RJj~r(&Uu{9|LaP%
z|2B{~v}#+eX$d5ogV#DC6hGmu*O^dz7bX)U=GPz;1cS>8jGkg~4(P=1M9&sq@DXqF
z3U3RiVwL~1w2N<KC9G%{x|NBwqv_h(go)BNO>An6u_TEhYHZUOk;1f>(YhhA08pwZ
z09uNIjwKf@A?w6kHLE=kMh0Jd8%I9xPh-!x!&e+I!`I$S2#*FjXu<#h002ovPDHLk
FV1ibK{8In`
new file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..f05dcb783923dcd39a8b5c2425def6a63edbfee6
GIT binary patch
literal 3268
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
deleted file mode 100644
index a3f7d7fac943de8729c1345bf49c2cc4d5f659e9..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
index 6413f64f7d67f961a9393408cfc28575da6a8fef..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
GIT binary patch
literal 0
Hc$@<O00001
deleted file mode 100644
--- a/browser/themes/windows/setDesktopBackground.css
+++ /dev/null
@@ -1,18 +0,0 @@
-/* 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/. */
-
-@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
-@namespace html url("http://www.w3.org/1999/xhtml");
-
-html|canvas#screen {
-  margin: 12px 11px 32px;
-}
-
-#monitor {
-  list-style-image: url("chrome://browser/skin/monitor.png");
-}
-
-#monitor[aspectratio="16:10"] {
-  list-style-image: url("chrome://browser/skin/monitor_16-10.png");
-}