<div dir="ltr"><div>(via <a href="https://dolske.wordpress.com/2017/05/31/photon-engineering-newsletter-4/">https://dolske.wordpress.com/2017/05/31/photon-engineering-newsletter-4/</a>)</div><div><br></div><div><p>Welcome to Photon update <a href="https://www.youtube.com/watch?v=EAdGhMRBbzY">#4</a>!
 [Yes, another update this week. I’ve caught up with the backlog, so 
these updates should now reflect recent work over the last 7-10 days.]</p>
<p>Let’s first talk about a couple of projects that overlap with Photon 
and have led to some questions about how things fit together.</p>
<h3>Quantum Flow and Photon</h3>
<p><a href="https://ehsanakhgari.org/blog/2017-03-09/quantum-flow-engineering-newsletter-1">Quantum Flow</a> is a project to find and prioritize fixing performance issues across the browser. We’ve found and/or fixed hundreds of <a href="https://wiki.mozilla.org/Quantum/Flow">bugs</a>
 so far, tagged “[qf:p1]” in Bugzilla. Photon is a project to refresh 
Firefox’s UI, which also has a major performance component. Photon also 
has a <a href="https://bugzilla.mozilla.org/showdependencytree.cgi?maxdepth=4&id=1363750&hide_resolved=0">big bug tree</a> of front-end performance issues found and/or fixed.</p>
<p>So, hey, are these separate projects? Are we duplicating effort? The answer is “no” to both.</p>
<p>Quantum Flow started off with an emphasis on platform bugs, since web
 content performance is, y’know, a pretty important consideration for a 
web browser. The Photon project got rolling well after Quantum Flow had 
begun, and is simply the front-end complement to Quantum Flow’s 
performance investigations. The two projects are basically just 
different views into the same underlying work, and are coordinating very
 closely.</p>
<p>The Photon performance work is a little more structured than Quantum 
Flow as a whole, though. We’ve clustered the front-end performance bugs 
into <a href="https://bugzilla.mozilla.org/showdependencytree.cgi?id=1363750&maxdepth=1&hide_resolved=0">about 10 areas</a>
 of specific types of bugs or UX interactions. These are not the only 
areas of front-end performance, but are the ones  we want to focus on 
for around the Firefox 57 timeframe.</p>
<h3>Photon Mobile</h3>
<p>The main focus of Quantum and Photon is Desktop Firefox. However, the mobile team will be doing a<a href="https://dribbble.com/shots/3508511-Photon-Mock-1"> visual refresh</a>
 of Firefox on iOS and Android to fit in with the new Photon design. 
They’ll be updating iconography and colors, as well as making the page 
loading indicators, menus, toolbars, and tab tray more consistent across
 iOS and Android. It’s also worth noting that Firefox on Android will 
still benefit from some of the Quantum improvements, since it’s also 
built on top of Gecko (on iOS we use WebKit, due to Apple’s platform 
restrictions).</p>
<h2>Recent Changes</h2>
<div>Here’s what’s happened in Photon this week.</div>

<div>Menus/structure:</div>
<div>
<ul><li>Page action menu is taking shape – now has “<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1363182">Send to device</a>” and <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1363183">bookmarking</a> functionality. Pocket functionality is next on the list.</li><li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1009116">Long overdue</a>
 maintenance and performance improvement work on panels, panelmultiviews
 and their transitions is ongoing, getting better every day.</li><li>Customization <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1354078">context menus</a> and customize mode <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1354126">improvements</a>
 have landed – customize mode is now more usable when the photon pref is
 toggled. We’re getting closer to toggling that pref on nightly.</li><li>Sidebar switcher improvements have landed. You can now <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1355331">move the sidebar</a>
 to the left or right side, WebExtension sidebars are now listed, and 
some styling improvements have been made. When the sidebar button has 
also been <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1364238">updated</a> this part of the project will be nearly done.</li><li>Initial patches for the new Library panel are awaiting review.</li></ul>
<p> </p>
</div>
<div>Animation:</div>
<div>
<ul><li>Work continues on animations for downloads toolbar button, 
stop/reload button, and page loading indicator – but these haven’t 
landed yet.</li><li>Looked into SVG spritesheet production+optimization with <a href="https://github.com/sfoster/svgo/tree/photon-plugins">SVGO plugins</a>. This allows us to both to cleanup the SVG markup and optimize out some of the poor SVG generated by graphics editors.</li></ul>
</div>

<div>Preferences:</div>
<ul><li>We’ve decided to <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1363850">hold back</a>
 the preferences reorg until Firefox 56. As previously noted, we’re 
planning on making some further revisions to the preferences reorg that 
has already landed in Nightly. They’re not large in scope, but 55 goes 
to Beta in just a few weeks (<a href="https://wiki.mozilla.org/RapidRelease/Calendar">June 12th</a>), and we want to make sure we get things right before shipping it to Beta or Release.</li><li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1365210">Updated the strings</a> in the new performance page, added a <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1360491">search icon</a> to the search field, and fixed a number of other small bugs.</li></ul>

<div>Visual redesign:</div>
<div>
<ul><li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1367384">The title bar is now dark</a> by default on Windows 10. It’s a pretty striking look, and we think you’ll like it. A similar change for <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1367385">OS X</a> is coming.<br>
<img class="gmail-alignnone gmail-wp-image-1825" src="https://dolske.files.wordpress.com/2017/05/darktoolbar.png?w=633&h=88" alt="darktoolbar" width="633" height="88"><br>
The dark purple has led to at least one interesting reaction. 😉<br>
<img class="gmail-alignnone gmail-wp-image-1786" src="https://dolske.files.wordpress.com/2017/05/screen-shot-2017-05-30-at-3-14-49-pm.png?w=229&h=74" alt="Screen Shot 2017-05-30 at 3.14.49 PM" width="229" height="74"></li><li>The arrow in the back button <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1367015">got a bit smaller</a>.
 This makes it consistent with the forward arrow – which is especially 
important for use in Compact Mode, where both are styled identically 
(i.e. no circle around the back button).</li><li>Windows 7 <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1367712">no longer</a> has a custom toolbar background color. It was bluish, and is now just a normal grey.</li><li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1368016">Started to remove</a> the “compact” from the “compact light/dark” themes that shipped in <a href="https://hacks.mozilla.org/2017/04/firefox-53-quantum-compositor-compact-themes-css-masks-and-more/">Firefox 53</a>.
 Wait, wait. Hold your fury! With Photon, “compact” will simply be a 
mode independent of any particular theme. You’ll still be able to have a
 compact-dark theme. But can also have the default theme be compact, or 
have a non-compact dark theme. Or use a <a href="https://blog.mozilla.org/addons/2017/02/24/improving-themes-in-firefox/">3rd party theme</a> in compact mode.</li><li>Removed dropdown markers for <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1366424">bookmark folders</a> and <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1366550">toolbar buttons</a>.</li></ul>
</div>

<div>Onboarding:</div>
<div>
<ul><li>Coordinating with the <a href="https://wiki.mozilla.org/Firefox/Activity_Stream">Activity Stream</a>
 project to finalize automigration UI. Also discussing impact to the 
onboarding tour, as Activity Stream will only be doing a limited rollout
 (5% of users) in Firefox 56. Adapting the tour to the current 
(pre-Activity Stream) about:home and New Tab page introduces some 
complications and extra work.</li><li>Completed a User Research study to better understand why users download Firefox and what their expectations are.</li></ul>
<p> </p>
</div>
<div>Performance:</div>
<div>
<ul><li>Even more <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1363505">sync reflow tests</a>
 are being written, as well as a test to list files loaded early during 
startup. These help ensure we don’t regress the fantastic performance 
improvements that have been made so far.</li><li>We got some nice contributions, especially a couple fixes from Dão for <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1358453">sync reflows</a> in tab interactions.</li><li>The last thing causing NSS initialization before first paint is <a href="https://blog.mozilla.org/blog/2017/03/07/lots-new-in-firefox-game-changing-webassembly-support/">captive portal detection</a>, and should be fixed soon.</li><li>Felipe Gomes is joining the Photon Performance team, and will focus 
initially on jank caused by code running off of timers. He’ll have an 
intern starting soon who we expect will start by fixing some main thread
 IO bugs. Also, the rest of the Photon team will be starting to use some
 of their time to begin working on other performance bugs.</li></ul>
</div>
<p> </p>
<p><a href="https://en.wikipedia.org/wiki/End-of-Transmission_character">End of transmission</a>.</p></div></div>