Firefox Headlines (December 5th, 2017)

Mike Conley mconley at mozilla.com
Tue Dec 5 21:26:17 UTC 2017


Hi everybody,

The Firefox Desktop engineering team met again today to share what we've
been up to. Here are the good bits:
Highlights

   -

   Check out the blog post on hacks.mozilla.org on using the new theming
   API in Firefox
   <https://hacks.mozilla.org/2017/12/using-the-new-theming-api-in-firefox/>
   - Animated GIF! <https://i.imgur.com/Wg6vXql.gif>


   -

   evanxd added a spotlight feature
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1407568> to Preferences so
   that it’s easier for “help” links to highlight relevant things!
   -

      This is what that looks like right now.
      <https://screenshots.firefoxusercontent.com/images/fa30545d-af69-4387-9b06-5746f47b854c.png>
      -

      Here’s the UX spec
      <https://mozilla.invisionapp.com/share/HSCNDG9UG#/screens/243549772>
      in case the above description isn’t clear enough
      -

   OMTP (Off-main-thread-painting) should be shipping to release in Firefox
   58. Here’s a blog post explaining what it is and why it’s great!
   <https://mozillagfx.wordpress.com/2017/12/05/off-main-thread-painting/>
   -

   A highly requested Screenshots feature is now in Nightly: Added the
   ability to copy the image to the clipboard
   <https://github.com/mozilla-services/screenshots/pull/3758> in addition
   to the other choices of uploading or saving.
   -

   Firefox Focus on Android & iOS has completed version 4.0, which will
   soon be on the Play and Apple Store.
   -

      New features in Firefox Focus 4.0 (for both Android and iOS) are:
      -

         The ability to add custom search engines and autocomplete domains
         <https://support.mozilla.org/en-US/kb/whats-new-focus-ios-4?as=u&utm_source=inproduct>
         -

         Integration with third-party password manager apps, like LastPass
         -

   A group of students at MSU <https://msu.edu/> have finished working on
   the Browser Screenshots
   <https://developer.mozilla.org/en-US/docs/Mozilla/QA/Browser_screenshots>
   testing suite for their Capstone course
   <http://www.capstone.cse.msu.edu/2017-01/home/>.
   -

      Check out their video!
      <https://www.youtube.com/watch?v=VWEBoQnnswk&feature=youtu.be>

Friends of the Firefox team

   -

   Resolved bugs (excluding employees): https://mzl.la/2je7cZF
   -

      More than one bug fixed:
      -

         Ryan Leake
         -

         Tim Nguyen :ntim
         -

         Tushar Arora
         -

      New contributors (🌟 = First Patch!)
      -

         86ecce74 flattened some excessive inheritance
         <https://bugzilla.mozilla.org/show_bug.cgi?id=1416483>, which got
         rid of another XBL binding. It’s great to see the XBL binding
         count go down
         <https://bgrins.github.io/xbl-analysis/graph/#bindings>!
         -

         🌟 Andrej Gorovoj cleaned up some element IDs
         <https://bugzilla.mozilla.org/show_bug.cgi?id=1416875> in our
         prompting code.
         -

         🌟 Oliver Alonzo fixed a bug
         <https://bugzilla.mozilla.org/show_bug.cgi?id=1417527> where
         right-clicks in about:preferences were interpreted as left-clicks.
         -

         🌟 Sean Prashad fixed some SASS linting errors
         <https://bugzilla.mozilla.org/show_bug.cgi?id=1421444> in Activity
         Stream
         -

         🌟 Tushar Arora made the tabs.query WebExtension API
         <https://bugzilla.mozilla.org/show_bug.cgi?id=1334782> support
         regular expression patterns, and also made it so that
         WebExtensions can clear title prefaces
         <https://bugzilla.mozilla.org/show_bug.cgi?id=1402399> with the
         empty string

Project UpdatesAdd-ons

   -

   The theme API now has support for setting the urlbar and searchbar
   border color <https://bugzilla.mozilla.org/show_bug.cgi?id=1418603>.
   -

   A message is now displayed on about:preferences
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1403751> after a user
   disables an extension reminding them how to re-enable it.
   -

   Calling tabs.create without a windowId will now target only non-popup
   windows <https://bugzilla.mozilla.org/show_bug.cgi?id=1415913>.
   -

   browserSettings APIs were added for controlling the options to open
   bookmarks in new tabs
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1420974> and to open
   search results in new tabs
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1420969>.
   -

   Tabs.query now does pattern matching on the title
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1334782>.
   -

   Read-only browserSettings now return false when calling set or clear
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1408472> and also report
   an accurate levelofControl.
   -

   “Scrollbars” has been added to window features
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1369257> for windows
   created via identity.launchWebAuthFlow.
   -

   The pref for ui.context_menus.after_mouseup has also been exposed to
   extensions <https://bugzilla.mozilla.org/show_bug.cgi?id=1419426> via
   the browserSettings API.
   -

   The user is now notified the first time they visit the new tab page
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1390158> if an extension
   is controlling it.

Activity Stream

   -

   Uplifted a couple of critical patches to 58 (Pocket Personalization
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1421302>, and Indonesia
   newtab breakage <https://bugzilla.mozilla.org/show_bug.cgi?id=1419601>)

Browser Architecture
<https://mozilla.github.io/firefox-browser-architecture/>

   -

   Sync and Storage roadmap proposal
   <https://mozilla.github.io/firefox-browser-architecture/text/0008-sync-and-storage-review-packet.html>
   successfully passed review

Form Autofill <https://wiki.mozilla.org/Firefox/Features/Form_Autofill>

   -

   Improved the accuracy of identifying fields related to credit card
   expiration date.
   -

   Fixed an issue that the cached "searchString" in the autocomplete module
   isn't consistent with the actual value in the input element.
   -

   Heartbeat for credit card autofill is live.

Lint

   -

   If you use `git mozreview push`, then lint should run automatically
   against the files in your push.
   -

      You may need to run `./mach mercurial-setup` to pick up the latest
      version-control-tools.
      -

   Requiring the use of Services.jsm rather than .getService continues to
   roll out, all of toolkit/
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1417944> & services/
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1420422> now covered,
   browser/ <https://bugzilla.mozilla.org/show_bug.cgi?id=1421968> is on
   its way.

Mobile

   -

   Firefox for Android can be used as an "Assist App" again!
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1413739> This means that
   long pressing the home button launches Firefox with a new tab ready for
   typing a search query or URL.
   -

      This feature was temporarily lost when the Search Activity / Widget
      was removed in Firefox for Android 58, and should be fixed in Firefox for
      Android 59

Performance

   -

   Tab warming has landed, but is disabled by default
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1397426>
   -

      There is a bug where links that are opened in new tabs sometimes show
      perma-spinners with warming enabled
      <https://bugzilla.mozilla.org/show_bug.cgi?id=1423208>, so haven’t
      yet enabled by default.
      <https://bugzilla.mozilla.org/show_bug.cgi?id=1423220>
      -

      There’s another, harder-to-hit bug
      <https://bugzilla.mozilla.org/show_bug.cgi?id=1423226> where
      permanent spinners can be presented to the user after closing tabs. This
      doesn’t require warming to be enabled, and is marked as a regression.
      -

      There’s also a Talos regression
      <https://bugzilla.mozilla.org/show_bug.cgi?id=1422685> being
      investigated. Hooray!
      -

      Pref: browser.tabs.remote.warmup.enabled
      -

         There’s a reason this isn’t yet enabled on Nightly though. Expect
         perma-spinners until the blockers for this bug are fixed
         <https://bugzilla.mozilla.org/show_bug.cgi?id=1423220>
         -

   Patches are up to make FormHistory.jsm use Sqlite.jsm instead of
   mozIStorageService <https://bugzilla.mozilla.org/show_bug.cgi?id=888784>,
   which allows us to avoid some main-thread IO when FormHistory is first
   accessed.
   -

   We now have automated tests to prevent flickering regressions
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1421456> during startup
   and when opening new windows.

Platform Audibles

   -

   samael made it so that
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1414745>
   nsBrowserStatusFilter::OnStateChange only gets STATE_IS_NETWORK updates.
   -

   Tommy Kuo is moving <select> dropdown rendering into the content process
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1421229>. This should
   re-enable a bunch of styling capabilities, and greatly improve performance
   and responsiveness for dropdowns with many items
   -

      The plan is to retain the OS native styling unless overridden by
      content
      -

   billm is removing the Add-on Interposition Service
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1412456>, a.k.a.
   “transparent CPOWs for legacy multiprocess-incompatible add-ons”
   -

   WebRender is going to make tab switching even faster
   <https://twitter.com/mike_conley/status/936728556008329219>

Privacy/Security

   -

   The official Firefox Multi-Account Containers
   <https://addons.mozilla.org/en-US/firefox/addon/multi-account-containers/>
   extension has passed 100k downloads on AMO.
   -

   nsIPermissionRequest now includes an isHandlingUserInput field
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1345424> to easily see
   whether the prompt comes from a user action.
   -

   We’re starting a project to improve the user experience around site data
   (including cookies and cache) management. You can follow along here
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1421690>. Also thinking
   about how we can de-duplicate code that does data sanitization
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1422365> for users.
   -

   Heads up: The definition of window.isSecureContext has changed to not
   consider the window opener anymore
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1410364>.

Search and Navigation <https://wiki.mozilla.org/Firefox/Search>Address Bar
& Search

   -

   The Address Bar now freezes an ongoing search when the selection is
   changed through the keyboard
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1410240>, to avoid
   surprising the user by moving matches around
   -

   With the update to Firefox 57.0.1, some users may experience a search
   reset <https://bugzilla.mozilla.org/show_bug.cgi?id=1419941>. If they
   had their default a search plugin installed before Firefox 45 or installed
   by a legacy add-on, it will be silently reset to the default engine of
   their region. Users who are more likely to have customized the engine will
   see a prompt offering an easy one click way to keep the current default.
   -

   Fixed some very frequent intermittent
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1415908> failures
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1416142> in
   browser_ext_omnibox.js

Places

   -

   Landed a patch to reduce I/O when storing unchanged page metadata
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1420571> for Activity
   Stream
   -

   Landed some clean up work for Places Maintenance
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1422058>
   -

   Mardak fixed browser code to guess a favicon type from the file
   extension when the “type” attribute is not defined
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1422289>
   -

   Milind contributed a patch making place:tag=NN queries case insensitive
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1421654>
   -

   Doug Thayer landed 2 performance improvements in history: speeding up
   url hashes generation
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1417266>, and using a
   single runnable to notify multiple visits
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1418443>.

More

   -

   :Kit made Sqlite.jsm copy over temp entities when creating a writable
   clone of a connection
   <https://bugzilla.mozilla.org/show_bug.cgi?id=1422383>

Test Pilot <https://wiki.mozilla.org/Test_Pilot>

   -

   Check out our recent blog posts on updates to the Notes experiment and
   on usage of react-storybook on the Test Pilot website
   <https://medium.com/firefox-test-pilot>
   -

   Screenshots updates:
   -

      Highly requested feature now in Nightly: Added the ability to copy
      the image to the clipboard
      <https://github.com/mozilla-services/screenshots/pull/3758> in
      addition to the other choices of uploading or saving.
      -

      Tracking Firefox changes needed to become a pure WebExtension in bug
      1422437 <https://bugzilla.mozilla.org/show_bug.cgi?id=1422437>
      -

      Features coming soon: annotations (draw on your shots) and FxA
      integration
      -

      A/B testing on two small website features shipping soon

Web Payments <https://wiki.mozilla.org/Firefox/Features/Web_Payments>

   -

   Making progress on the dialog and use of Custom Elements for
   implementing the dialog and UI components within it
   -

   Continuing refinement on UX specs

Below the fold

   -

   The pref devtools.inspector.showAllAnonymousContent shows anonymous
   content in the web inspector with e10s
   -

   Activity Stream
   -

      The team is evolving their dev process from a GitHub centric approach
      for issue tracking to Bugzilla
      -

      We are experiencing some slow queries on our Redshift instance.  We
      are aware of the issue and are working on a fix for later this week.
      -

   Form Autofill V2
   -

      [L10N] Polished the layout of dialogs in Preferences
      -

      [Clear Button] Fixed an issue that the clear button remains after the
      populated fields are cleared.
      -

      [CA/DE Support] Imported CA/DE country metadata.
      -

      [CA/DE Support] Refactored country data lookup process.
      -

      [Section Support] Supported multiple sections.
      -

      [Section Support] Implemented the basic algorithm to identify
      sections when @autocomplete isn't specified.
      -

      QA has started to test V2 features.


This information, including all of the previous updates, are fully
available in this doc: https://docs.google.com/a/mozi
lla.com/document/d/1u9YH3ULNRYg6G-fN-Udkvfkcvg0alJfzi_zIAfFN
kL8/edit?usp=sharing

Also note that I'm really just synthesizing and humanizing the stuff that's
on the Wiki, which is freely available from here:
https://wiki.mozilla.org/Firefox/Meeting, so check that out if you want the
source material. It'll also be posted (minus the Below the Fold stuff) to
the Nightly blog.

Finally, if there's a Firefox-ish team that you feel isn't being
represented here, please let them know about the above meeting so we can
get their updates.

Keep on rockin' the free web,

-Mike
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/firefox-dev/attachments/20171205/bc44b2cf/attachment-0001.html>


More information about the firefox-dev mailing list