Closed Bug 1418602 Opened 2 years ago Closed 2 years ago

Allow theming sidebars

Categories

(WebExtensions :: Themes, enhancement, P2)

enhancement

Tracking

(firefox63 fixed)

RESOLVED FIXED
mozilla63
Tracking Status
firefox63 --- fixed

People

(Reporter: ntim, Assigned: ntim)

References

(Blocks 1 open bug)

Details

(Keywords: dev-doc-complete, Whiteboard: [ntim-intern-project] [blocking-static-themes-fx])

Attachments

(1 file, 7 obsolete files)

Themes should be able to set the text and background color of the sidebars.
But only if browser_style is true please, otherwhise it should be up to the add-on developer.
(In reply to Croydon from comment #1)
> But only if browser_style is true please, otherwhise it should be up to the
> add-on developer.

This bug is about the sidebar header, and the built-in sidebars like the bookmarks or history sidebar.

Extensions aren't affected.
Priority: -- → P5
Depends on: 1385518
Component: WebExtensions: Frontend → WebExtensions: Themes
Assignee: nobody → masinico
Status: NEW → ASSIGNED
For this bug, you'll want to make the LightweightThemeConsumer class accept an optional "outerWindowID" parameter, that would correspond to the  correct browser.xul outer window ID (in this case the outer window ID of `window.top`). You'll want to update the existing code [1] to check against against that window ID too. If it's not specified, the outerWindowID would be just be the outerWinID of the defaultView of the document.

Once that's done, you'll be able to import LightweightThemeConsumer.jsm file into the sidebar frames, and initialize it with the document and outerWindowID of the parent browser.xul window.

You'll also want to add support for a "context" attribute on the root element inside LWTConsumer.jsm, so only the relevant sidebar CSS variables get added to the document.

Then once you've done that, you can do the usual to support the sidebar, sidebar_text, sidebar_border, sidebar_highlight and sidebar_highlight_text properties.

[0]: https://dxr.mozilla.org/mozilla-central/source/toolkit/modules/LightweightThemeConsumer.jsm#82
[1]: https://dxr.mozilla.org/mozilla-central/source/toolkit/modules/LightweightThemeConsumer.jsm#87
Blocks: 1385518
No longer depends on: 1385518
Priority: P5 → P2
Attachment #8959640 - Attachment is obsolete: true
Attachment #8964049 - Attachment is obsolete: true
Hey Connor, any updates here?
Flags: needinfo?(masinico)
(In reply to Mike Conley (:mconley) (:⚙️) (Totally backlogged on reviews and needinfos) from comment #22)
> Hey Connor, any updates here?

I still haven't gotten the chance to set up building firefox on one of the lab iMacs. I am planning on setting that up and working on the mac styling Wednesday night.
Flags: needinfo?(masinico)
Attachment #8965792 - Attachment is obsolete: true
Assignee: masinico → ntim.bugs
Attachment #8970996 - Attachment is obsolete: true
Attachment #8965851 - Attachment is obsolete: true
Attachment #8983348 - Attachment is obsolete: true
Depends on: 1455138
Attachment #8983355 - Attachment is obsolete: true
Depends on: 1469287
Depends on: 1466826
Product: Toolkit → WebExtensions
Whiteboard: [ntim-intern-project]
No longer blocks: dark-theme-darkening
Depends on: 1474163
Depends on: 1483251
Whiteboard: [ntim-intern-project] → [ntim-intern-project] [blocking-static-themes-fx]
Comment on attachment 8983712 [details]
Bug 1418602 - Allow theming sidebars.

https://reviewboard.mozilla.org/r/249536/#review269588

::: browser/themes/shared/places/places.inc.css:19
(Diff revision 9)
> +  color: var(--lwt-sidebar-text-color);
> +}
> +
> +.sidebar-panel[lwt-sidebar] .sidebar-placesTreechildren::-moz-tree-row(selected) {
> +  background-color: hsla(0,0%,80%,.3);
> +  color: var(--lwt-sidebar-text-color);

note to self: this line can be removed.
Comment on attachment 8983712 [details]
Bug 1418602 - Allow theming sidebars.

https://reviewboard.mozilla.org/r/249536/#review269598

Hey ntim, thanks! This looks really great, and works well! I have a few suggestions and questions - see below.

::: browser/base/content/contentTheme.js:38
(Diff revision 9)
> +  ["--lwt-sidebar-text-color", {
> +    lwtProperty: "sidebar_text",
> +    processColor(rgbaChannels, element) {
> +      if (!rgbaChannels) {
> +        element.removeAttribute("lwt-sidebar");
> +        element.removeAttribute("lwt-sidebar-brighttext");
> +        return null;
> +      }
> +
> +      element.setAttribute("lwt-sidebar", "true");
> +      const {r, g, b, a} = rgbaChannels;
> +      if (!_isTextColorDark(r, g, b)) {
> +        element.setAttribute("lwt-sidebar-brighttext", "true");
> +      }
> +
> +      return `rgba(${r}, ${g}, ${b}, ${a})`;
> +    },
> +  }],

I'm noticing some pretty stark similarities between this,  the --lwt-sidebar-highlight-text-color processColor functions, and some of the other processColors from earlier on.

It might be worth trying to find a way to de-duplicate this stuff down the line, but I guess that can be follow-up work.

::: browser/components/places/content/bookmarksSidebar.js:20
(Diff revision 9)
> +XPCOMUtils.defineLazyProxy(this, "LightweightThemeChildHelper",
> +  "resource:///modules/LightweightThemeChildHelper.jsm");

Nit: alignment of the second line here to match the formatting convention of the defineLazyScriptGetters.

::: browser/components/places/content/historySidebar.js:20
(Diff revision 9)
> +XPCOMUtils.defineLazyProxy(this, "LightweightThemeChildHelper",
> +  "resource:///modules/LightweightThemeChildHelper.jsm");

Nit: Same as the other file, re: formatting.

::: browser/modules/LightweightThemeChildHelper.jsm:8
(Diff revision 9)
>   * You can obtain one at http://mozilla.org/MPL/2.0/. */
>  
>  "use strict";
>  
>  ChromeUtils.import("resource://gre/modules/Services.jsm");
> +ChromeUtils.import("resource:///modules/BrowserWindowTracker.jsm");

Let's make this a lazy module getter.

::: browser/modules/LightweightThemeChildHelper.jsm:47
(Diff revision 9)
> +          const { SidebarUI, windowUtils } = win;
> +          if (SidebarUI && SidebarUI.browser) {
> +            this.update(windowUtils.outerWindowID, SidebarUI.browser.contentWindow);
> +          }

We probably only want to do this if the outerWindowID is included in the changedKeys, like you're doing on liny 60.

What's better, since we know that in the sidebar case, the outerWindowIDs are unique, once we find the right window, we can just bail out.

OR, even better, we can query for the window by outerWindowID, using Services.wm.getOuterWindowWithId!: https://searchfox.org/mozilla-central/source/xpfe/appshell/nsIWindowMediator.idl#84

::: browser/modules/ThemeVariableMap.jsm:87
(Diff revision 9)
> +  "sidebar",
> +  "sidebar_text",
> +  "sidebar_highlight",
> +  "sidebar_highlight_text",

Nit: Was this list attempting to be in alphabetical order? If so, we should reorder these.

::: browser/themes/osx/places/places.css:46
(Diff revision 9)
>  
>  .sidebar-placesTreechildren::-moz-tree-cell-text {
>    margin-inline-end: 6px;
>  }
>  
> +.sidebar-placesTreechildren::-moz-tree-image(selected),

What does it meant to set the color and font-weight of -moz-tree-image?

::: browser/themes/shared/places/places.inc.css:22
(Diff revision 9)
> +.sidebar-panel[lwt-sidebar-brighttext] .sidebar-placesTreechildren::-moz-tree-row(selected) {
> +  -moz-appearance: none;
> +  background-color: rgba(249,249,250,.1);
> +}
> +
> +.sidebar-panel[lwt-sidebar-brighttext] .sidebar-placesTreechildren::-moz-tree-image(selected),
> +.sidebar-panel[lwt-sidebar-brighttext] .sidebar-placesTreechildren::-moz-tree-twisty(selected),
> +.sidebar-panel[lwt-sidebar-brighttext] .sidebar-placesTreechildren::-moz-tree-cell-text(selected) {
> +  color: var(--lwt-sidebar-text-color);
> +}
> +
> +.sidebar-panel[lwt-sidebar-highlight] .sidebar-placesTreechildren::-moz-tree-row(selected,focus) {
> +  -moz-appearance: none;
> +  background-color: var(--lwt-sidebar-highlight-background-color);
> +}
> +
> +.sidebar-panel[lwt-sidebar-highlight] .sidebar-placesTreechildren::-moz-tree-image(selected, focus),
> +.sidebar-panel[lwt-sidebar-highlight] .sidebar-placesTreechildren::-moz-tree-twisty(selected, focus),
> +.sidebar-panel[lwt-sidebar-highlight] .sidebar-placesTreechildren::-moz-tree-cell-text(selected, focus) {
> +  color: var(--lwt-sidebar-highlight-text-color);
> +}
> +

When testing this patch, I notice that the theme colours are unapplied when the window is unfocused. Is that known / follow-up work?

::: browser/themes/shared/places/places.inc.css:30
(Diff revision 9)
> +}
> +
> +.sidebar-panel[lwt-sidebar-brighttext] .sidebar-placesTreechildren::-moz-tree-image(selected),
> +.sidebar-panel[lwt-sidebar-brighttext] .sidebar-placesTreechildren::-moz-tree-twisty(selected),
> +.sidebar-panel[lwt-sidebar-brighttext] .sidebar-placesTreechildren::-moz-tree-cell-text(selected) {
> +  color: var(--lwt-sidebar-text-color);

Similar to your note to self above - do you need this line?

::: toolkit/components/extensions/test/browser/browser_ext_themes_sidebars.js:66
(Diff revision 9)
> +  is(rootCS.backgroundColor, hexToCSS(theme.colors.sidebar) || originalBackground,
> +     "Sidebar background should be set.");
> +  is(rootCS.color, hexToCSS(theme.colors.sidebar_text) || originalColor,

For consistency, maybe we should have some actualBackgroundColor and actualTextColor variables here, and calculate them up after line 55.

::: toolkit/components/extensions/test/browser/browser_ext_themes_sidebars.js:97
(Diff revision 9)
> +     "Sidebar highlight background color should be reset.");
> +  is(highlightCS.color, originalHighlightColor,
> +     "Sidebar highlight text color should be reset.");
> +}
> +
> +add_task(async function test_support_sidebar_colors() {

Great test!
Attachment #8983712 - Flags: review?(mconley) → review-
Comment on attachment 8983712 [details]
Bug 1418602 - Allow theming sidebars.

https://reviewboard.mozilla.org/r/249536/#review269600

::: browser/themes/osx/places/places.css:46
(Diff revision 9)
>  
>  .sidebar-placesTreechildren::-moz-tree-cell-text {
>    margin-inline-end: 6px;
>  }
>  
> +.sidebar-placesTreechildren::-moz-tree-image(selected),

This is just for the icon color. See: https://searchfox.org/mozilla-central/source/toolkit/themes/shared/tree.inc.css#153-155

I forgot to add the selector in bug 1469287.

I'll see if I can simplify this CSS a little bit in a separate bug.

::: browser/themes/shared/places/places.inc.css:22
(Diff revision 9)
> +.sidebar-panel[lwt-sidebar-brighttext] .sidebar-placesTreechildren::-moz-tree-row(selected) {
> +  -moz-appearance: none;
> +  background-color: rgba(249,249,250,.1);
> +}
> +
> +.sidebar-panel[lwt-sidebar-brighttext] .sidebar-placesTreechildren::-moz-tree-image(selected),
> +.sidebar-panel[lwt-sidebar-brighttext] .sidebar-placesTreechildren::-moz-tree-twisty(selected),
> +.sidebar-panel[lwt-sidebar-brighttext] .sidebar-placesTreechildren::-moz-tree-cell-text(selected) {
> +  color: var(--lwt-sidebar-text-color);
> +}
> +
> +.sidebar-panel[lwt-sidebar-highlight] .sidebar-placesTreechildren::-moz-tree-row(selected,focus) {
> +  -moz-appearance: none;
> +  background-color: var(--lwt-sidebar-highlight-background-color);
> +}
> +
> +.sidebar-panel[lwt-sidebar-highlight] .sidebar-placesTreechildren::-moz-tree-image(selected, focus),
> +.sidebar-panel[lwt-sidebar-highlight] .sidebar-placesTreechildren::-moz-tree-twisty(selected, focus),
> +.sidebar-panel[lwt-sidebar-highlight] .sidebar-placesTreechildren::-moz-tree-cell-text(selected, focus) {
> +  color: var(--lwt-sidebar-highlight-text-color);
> +}
> +

This is intended. The default theme has the same behaviour, a gray background when the window is unfocused, and the system highlight background when the window focus. This is mainly being done for a11y reasons.

::: browser/themes/shared/places/places.inc.css:30
(Diff revision 9)
> +}
> +
> +.sidebar-panel[lwt-sidebar-brighttext] .sidebar-placesTreechildren::-moz-tree-image(selected),
> +.sidebar-panel[lwt-sidebar-brighttext] .sidebar-placesTreechildren::-moz-tree-twisty(selected),
> +.sidebar-panel[lwt-sidebar-brighttext] .sidebar-placesTreechildren::-moz-tree-cell-text(selected) {
> +  color: var(--lwt-sidebar-text-color);

Yes, it's overriding this rule: https://searchfox.org/mozilla-central/source/toolkit/themes/shared/tree.inc.css#65

The other rule I marked can be removed because the color property has no effect on ::-moz-tree-row, it has to be set on ::-moz-tree-cell-text/::-moz-tree-twisty or ::-moz-tree-image.
Depends on: 1484435
(In reply to Tim Nguyen :ntim from comment #39)
> Comment on attachment 8983712 [details]
> Bug 1418602 - Allow theming sidebars.
> 
> https://reviewboard.mozilla.org/r/249536/#review269600
> 
> ::: browser/themes/osx/places/places.css:46
> (Diff revision 9)
> >  
> >  .sidebar-placesTreechildren::-moz-tree-cell-text {
> >    margin-inline-end: 6px;
> >  }
> >  
> > +.sidebar-placesTreechildren::-moz-tree-image(selected),
> 
> This is just for the icon color. See:
> https://searchfox.org/mozilla-central/source/toolkit/themes/shared/tree.inc.
> css#153-155

Filed bug 1484435 to fix the CSS there.
Comment on attachment 8983712 [details]
Bug 1418602 - Allow theming sidebars.

https://reviewboard.mozilla.org/r/249536/#review269618

This looks good to me, thanks!

::: browser/components/places/content/bookmarksSidebar.js:30
(Diff revision 12)
> +  new LightweightThemeChild({
> +    content: window,
> +    chromeOuterWindowID: window.top.windowUtils.outerWindowID,
> +  });

Can you please update the LightweightThemeChild.jsm to mention that the passed in mm might actually be a "fake" message manager for frames without actual message managers?

Also, if we're going to fake this thing out, we should probably do our best to satisfy ActorChild, and pass in docShell as well (since it exposes a getter for it). You can access that via window.docShell.

::: browser/components/places/content/historySidebar.js:37
(Diff revision 12)
>    if (uidensity) {
>      document.documentElement.setAttribute("uidensity", uidensity);
>    }
>  
> +  /* Listen for sidebar theme changes */
> +  new LightweightThemeChild({

Same as above, re: DocShell
Attachment #8983712 - Flags: review?(mconley) → review+
Depends on: 1484891
Backed out for Eslint and browser_ext_sidebarAction_runtime.js failures

Backout link: https://hg.mozilla.org/integration/autoland/rev/7c934a5a2c05b8dff1b60315dba9c29e1e3f8ad3

Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&revision=3f0325c0b307be193b5549f6bd98881a2d70a371

Log link

Eslint: https://treeherder.mozilla.org/logviewer.html#?job_id=194990328&repo=autoland&lineNumber=286

browser-chrome: https://treeherder.mozilla.org/logviewer.html#?job_id=194991708&repo=autoland&lineNumber=12283

Log snippet for eslint: 

[vcs 2018-08-21T01:25:07.795Z] 248715 files updated, 0 files merged, 0 files removed, 0 files unresolved
[vcs 2018-08-21T01:25:08.048Z] updated to 3f0325c0b307be193b5549f6bd98881a2d70a371
[vcs 2018-08-21T01:25:08.053Z] PERFHERDER_DATA: {"framework": {"name": "vcs"}, "suites": [{"extraOptions": ["m3.xlarge"], "lowerIsBetter": true, "name": "clone", "shouldAlert": false, "subtests": [], "value": 150.548113822937}, {"extraOptions": ["m3.xlarge"], "lowerIsBetter": true, "name": "pull", "shouldAlert": false, "subtests": [], "value": 8.938756942749023}, {"extraOptions": ["m3.xlarge"], "lowerIsBetter": true, "name": "update", "shouldAlert": false, "subtests": [], "value": 92.79880809783936}, {"extraOptions": ["m3.xlarge"], "lowerIsBetter": true, "name": "overall", "shouldAlert": false, "subtests": [], "value": 253.9482879638672}]}
[vcs 2018-08-21T01:25:08.422Z] TinderboxPrint:<a href=https://hg.mozilla.org/integration/autoland/rev/3f0325c0b307be193b5549f6bd98881a2d70a371 title='Built from autoland revision 3f0325c0b307be193b5549f6bd98881a2d70a371'>3f0325c0b307be193b5549f6bd98881a2d70a371</a>
[task 2018-08-21T01:25:08.422Z] executing ['bash', '-cx', 'cd /builds/worker/checkouts/gecko/ && cp -r /build/node_modules_eslint node_modules && ln -s ../tools/lint/eslint/eslint-plugin-mozilla node_modules && ln -s ../tools/lint/eslint/eslint-plugin-spidermonkey-js node_modules && ./mach lint -l eslint -f treeherder --quiet\n']
[task 2018-08-21T01:25:08.426Z] + cd /builds/worker/checkouts/gecko/
[task 2018-08-21T01:25:08.426Z] + cp -r /build/node_modules_eslint node_modules
[task 2018-08-21T01:25:08.712Z] + ln -s ../tools/lint/eslint/eslint-plugin-mozilla node_modules
[task 2018-08-21T01:25:08.713Z] + ln -s ../tools/lint/eslint/eslint-plugin-spidermonkey-js node_modules
[task 2018-08-21T01:25:08.714Z] + ./mach lint -l eslint -f treeherder --quiet
[task 2018-08-21T01:25:09.393Z] New python executable in /builds/worker/checkouts/gecko/obj-x86_64-pc-linux-gnu/_virtualenvs/init/bin/python2.7
[task 2018-08-21T01:25:09.393Z] Also creating executable in /builds/worker/checkouts/gecko/obj-x86_64-pc-linux-gnu/_virtualenvs/init/bin/python
[task 2018-08-21T01:25:11.108Z] Installing setuptools, pip, wheel...done.
[task 2018-08-21T01:25:12.290Z] running build_ext
[task 2018-08-21T01:25:12.290Z] building 'psutil._psutil_linux' extension
[task 2018-08-21T01:25:12.290Z] creating build
[task 2018-08-21T01:25:12.290Z] creating build/temp.linux-x86_64-2.7
[task 2018-08-21T01:25:12.290Z] creating build/temp.linux-x86_64-2.7/psutil
[task 2018-08-21T01:25:12.290Z] x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=543 -DPSUTIL_LINUX=1 -I/usr/include/python2.7 -c psutil/_psutil_common.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_common.o
[task 2018-08-21T01:25:12.290Z] x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=543 -DPSUTIL_LINUX=1 -I/usr/include/python2.7 -c psutil/_psutil_posix.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_posix.o
[task 2018-08-21T01:25:12.290Z] x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=543 -DPSUTIL_LINUX=1 -I/usr/include/python2.7 -c psutil/_psutil_linux.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_linux.o
[task 2018-08-21T01:25:12.290Z] creating build/lib.linux-x86_64-2.7
[task 2018-08-21T01:25:12.290Z] creating build/lib.linux-x86_64-2.7/psutil
[task 2018-08-21T01:25:12.290Z] x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wl,-Bsymbolic-functions -Wl,-z,relro -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/psutil/_psutil_common.o build/temp.linux-x86_64-2.7/psutil/_psutil_posix.o build/temp.linux-x86_64-2.7/psutil/_psutil_linux.o -o build/lib.linux-x86_64-2.7/psutil/_psutil_linux.so
[task 2018-08-21T01:25:12.290Z] building 'psutil._psutil_posix' extension
[task 2018-08-21T01:25:12.290Z] x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=543 -DPSUTIL_LINUX=1 -I/usr/include/python2.7 -c psutil/_psutil_common.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_common.o
[task 2018-08-21T01:25:12.290Z] x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=543 -DPSUTIL_LINUX=1 -I/usr/include/python2.7 -c psutil/_psutil_posix.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_posix.o
[task 2018-08-21T01:25:12.290Z] x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wl,-Bsymbolic-functions -Wl,-z,relro -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/psutil/_psutil_common.o build/temp.linux-x86_64-2.7/psutil/_psutil_posix.o -o build/lib.linux-x86_64-2.7/psutil/_psutil_posix.so
[task 2018-08-21T01:25:12.290Z] copying build/lib.linux-x86_64-2.7/psutil/_psutil_linux.so -> psutil
[task 2018-08-21T01:25:12.290Z] copying build/lib.linux-x86_64-2.7/psutil/_psutil_posix.so -> psutil
[task 2018-08-21T01:25:12.290Z] 
[task 2018-08-21T01:25:12.290Z] Error processing command. Ignoring because optional. (optional:packages.txt:comm/build/virtualenv_packages.txt)
[task 2018-08-21T01:31:12.537Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/toolkit/components/extensions/parent/ext-theme.js:125:13 | Method 'loadColors' has a complexity of 46. (complexity)
[task 2018-08-21T01:31:12.537Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/toolkit/components/extensions/test/browser/browser_ext_themes_sidebars.js:31:9 | 'treeChildren' is assigned a value but never used. Allowed unused vars must match /^console$/. (no-unused-vars)
[task 2018-08-21T01:31:12.537Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/toolkit/components/extensions/test/browser/browser_ext_themes_sidebars.js:37:21 | 'a' is assigned a value but never used. Allowed unused vars must match /^console$/. (no-unused-vars)
[task 2018-08-21T01:31:12.537Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/toolkit/components/extensions/test/browser/browser_ext_themes_sidebars.js:37:79 | Missing radix parameter. (radix)
[task 2018-08-21T01:31:12.537Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/toolkit/components/extensions/test/browser/browser_ext_themes_sidebars.js:43:21 | 'a' is assigned a value but never used. Allowed unused vars must match /^console$/. (no-unused-vars)
[task 2018-08-21T01:31:12.537Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/toolkit/components/extensions/test/browser/browser_ext_themes_sidebars.js:43:79 | Missing radix parameter. (radix)
[task 2018-08-21T01:31:12.537Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/toolkit/components/extensions/test/browser/browser_ext_themes_sidebars.js:45:6 | Missing trailing comma. (comma-dangle)
[task 2018-08-21T01:31:12.537Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/toolkit/components/extensions/test/browser/browser_ext_themes_sidebars.js:113:32 | Missing trailing comma. (comma-dangle)

Log snippet for browser-chrome:

[task 2018-08-21T01:52:51.383Z] 01:52:51     INFO - TEST-START | Shutdown
[task 2018-08-21T01:52:51.383Z] 01:52:51     INFO - Browser Chrome Test Summary
[task 2018-08-21T01:52:51.391Z] 01:52:51     INFO - Passed:  673
[task 2018-08-21T01:52:51.391Z] 01:52:51     INFO - Failed:  0
[task 2018-08-21T01:52:51.393Z] 01:52:51     INFO - Todo:    0
[task 2018-08-21T01:52:51.394Z] 01:52:51     INFO - Mode:    e10s
[task 2018-08-21T01:52:51.397Z] 01:52:51     INFO - *** End BrowserChrome Test Results ***
[task 2018-08-21T01:52:51.811Z] 01:52:51     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: NS_ENSURE_TRUE(maybeContext) failed: file /builds/worker/workspace/build/src/xpcom/threads/nsThread.cpp, line 866
[task 2018-08-21T01:52:51.827Z] 01:52:51     INFO - GECKO(3953) | [Parent 3953, Main Thread] WARNING: A runnable was posted to a worker that is already shutting down!: file /builds/worker/workspace/build/src/dom/workers/WorkerPrivate.cpp, line 1582
[task 2018-08-21T01:52:51.827Z] 01:52:51     INFO - GECKO(3953) | [Parent 3953, Main Thread] WARNING: Failed to dispatch offline status change event!: file /builds/worker/workspace/build/src/dom/workers/WorkerPrivate.cpp, line 2124
[task 2018-08-21T01:52:52.066Z] 01:52:52     INFO - GECKO(3953) | --DOCSHELL 0x7fb37f8df000 == 1 [pid = 4018] [id = {855380cc-3554-4817-8954-d39357c065b5}]
[task 2018-08-21T01:52:52.067Z] 01:52:52     INFO - GECKO(3953) | --DOCSHELL 0x7fb37f880000 == 0 [pid = 4018] [id = {8895ce74-2703-464b-b21c-ccf53eeddb95}]
[task 2018-08-21T01:52:52.067Z] 01:52:52     INFO - GECKO(3953) | --DOMWINDOW == 3 (0x7fb397955400) [pid = 4018] [serial = 1] [outer = (nil)] [url = moz-extension://5d148ae6-60b2-408e-98f7-7a3fe7e43f4b/_generated_background_page.html]
[task 2018-08-21T01:52:52.068Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.070Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.071Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.072Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.074Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.075Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.077Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.078Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.080Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.084Z] 01:52:52     INFO - GECKO(3953) | --DOMWINDOW == 2 (0x7fb37f859400) [pid = 4018] [serial = 4] [outer = (nil)] [url = moz-extension://9f3d25d8-2ee6-497a-9cfd-5dabf61ab0c1/_generated_background_page.html]
[task 2018-08-21T01:52:52.084Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.088Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.089Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.089Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.090Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.090Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.095Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.095Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.095Z] 01:52:52     INFO - GECKO(3953) | [Child 4018, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.096Z] 01:52:52     INFO - GECKO(3953) | --DOMWINDOW == 1 (0x7fb3801d8800) [pid = 4018] [serial = 3] [outer = (nil)] [url = moz-extension://5d148ae6-60b2-408e-98f7-7a3fe7e43f4b/_generated_background_page.html]
[task 2018-08-21T01:52:52.096Z] 01:52:52     INFO - GECKO(3953) | --DOMWINDOW == 0 (0x7fb3801dfc00) [pid = 4018] [serial = 6] [outer = (nil)] [url = moz-extension://9f3d25d8-2ee6-497a-9cfd-5dabf61ab0c1/_generated_background_page.html]
[task 2018-08-21T01:52:52.144Z] 01:52:52     INFO - GECKO(3953) | nsStringStats
[task 2018-08-21T01:52:52.144Z] 01:52:52     INFO - GECKO(3953) |  => mAllocCount:          39840
[task 2018-08-21T01:52:52.145Z] 01:52:52     INFO - GECKO(3953) |  => mReallocCount:            0
[task 2018-08-21T01:52:52.147Z] 01:52:52     INFO - GECKO(3953) |  => mFreeCount:           39840
[task 2018-08-21T01:52:52.148Z] 01:52:52     INFO - GECKO(3953) |  => mShareCount:          25185
[task 2018-08-21T01:52:52.150Z] 01:52:52     INFO - GECKO(3953) |  => mAdoptCount:           1448
[task 2018-08-21T01:52:52.151Z] 01:52:52     INFO - GECKO(3953) |  => mAdoptFreeCount:       1520
[task 2018-08-21T01:52:52.152Z] 01:52:52     INFO - GECKO(3953) |  => Process ID: 4018, Thread ID: 140409351911232
[task 2018-08-21T01:52:52.334Z] 01:52:52     INFO - GECKO(3953) | [Child 4140, Main Thread] WARNING: NS_ENSURE_TRUE(maybeContext) failed: file /builds/worker/workspace/build/src/xpcom/threads/nsThread.cpp, line 866
[task 2018-08-21T01:52:52.372Z] 01:52:52     INFO - GECKO(3953) | [Child 4117, Main Thread] WARNING: NS_ENSURE_TRUE(maybeContext) failed: file /builds/worker/workspace/build/src/xpcom/threads/nsThread.cpp, line 866
[task 2018-08-21T01:52:52.376Z] 01:52:52     INFO - GECKO(3953) | [Child 4117, Main Thread] WARNING: '!gThread', file /builds/worker/workspace/build/src/xpcom/threads/nsTimerImpl.cpp, line 399
[task 2018-08-21T01:52:52.418Z] 01:52:52     INFO - GECKO(3953) | [Child 4086, Main Thread] WARNING: NS_ENSURE_TRUE(maybeContext) failed: file /builds/worker/workspace/build/src/xpcom/threads/nsThread.cpp, line 866
[task 2018-08-21T01:52:52.479Z] 01:52:52     INFO - GECKO(3953) | [Child 4043, Main Thread] WARNING: NS_ENSURE_TRUE(maybeContext) failed: file /builds/worker/workspace/build/src/xpcom/threads/nsThread.cpp, line 866
[task 2018-08-21T01:52:52.672Z] 01:52:52     INFO - GECKO(3953) | nsStringStats
[task 2018-08-21T01:52:52.672Z] 01:52:52     INFO - GECKO(3953) |  => mAllocCount:          60255
[task 2018-08-21T01:52:52.673Z] 01:52:52     INFO - GECKO(3953) |  => mReallocCount:            0
[task 2018-08-21T01:52:52.673Z] 01:52:52     INFO - GECKO(3953) |  => mFreeCount:           60255
[task 2018-08-21T01:52:52.673Z] 01:52:52     INFO - GECKO(3953) |  => mShareCount:         127370
[task 2018-08-21T01:52:52.673Z] 01:52:52     INFO - GECKO(3953) |  => mAdoptCount:           2137
[task 2018-08-21T01:52:52.673Z] 01:52:52     INFO - GECKO(3953) |  => mAdoptFreeCount:       2189
[task 2018-08-21T01:52:52.673Z] 01:52:52     INFO - GECKO(3953) |  => Process ID: 4140, Thread ID: 140538627827520
[task 2018-08-21T01:52:52.741Z] 01:52:52     INFO - GECKO(3953) | --DOCSHELL 0x7fb546d59800 == 0 [pid = 4117] [id = {a5168013-2ef3-4bdc-bbed-987c5a622584}]
[task 2018-08-21T01:52:52.742Z] 01:52:52     INFO - GECKO(3953) | --DOMWINDOW == 1 (0x7fb54800a800) [pid = 4117] [serial = 53] [outer = (nil)] [url = about:blank]
[task 2018-08-21T01:52:52.742Z] 01:52:52     INFO - GECKO(3953) | --DOMWINDOW == 0 (0x7fb5489f0600) [pid = 4117] [serial = 51] [outer = (nil)] [url = about:blank]
[task 2018-08-21T01:52:52.742Z] 01:52:52     INFO - GECKO(3953) | [Child 4117, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.742Z] 01:52:52     INFO - GECKO(3953) | [Child 4117, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.742Z] 01:52:52     INFO - GECKO(3953) | [Child 4117, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.743Z] 01:52:52     INFO - GECKO(3953) | [Child 4117, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.744Z] 01:52:52     INFO - GECKO(3953) | [Child 4117, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.744Z] 01:52:52     INFO - GECKO(3953) | [Child 4117, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.745Z] 01:52:52     INFO - GECKO(3953) | [Child 4117, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.746Z] 01:52:52     INFO - GECKO(3953) | [Child 4117, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.747Z] 01:52:52     INFO - GECKO(3953) | [Child 4117, Main Thread] WARNING: '!mMainThread', file /builds/worker/workspace/build/src/xpcom/threads/nsThreadManager.cpp, line 564
[task 2018-08-21T01:52:52.797Z] 01:52:52     INFO - GECKO(3953) | nsStringStats
[task 2018-08-21T01:52:52.797Z] 01:52:52     INFO - GECKO(3953) |  => mAllocCount:          43985
[task 2018-08-21T01:52:52.797Z] 01:52:52     INFO - GECKO(3953) |  => mReallocCount:            0
[task 2018-08-21T01:52:52.797Z] 01:52:52     INFO - GECKO(3953) |  => mFreeCount:           43985
[task 2018-08-21T01:52:52.797Z] 01:52:52     INFO - GECKO(3953) |  => mShareCount:          41919
[task 2018-08-21T01:52:52.798Z] 01:52:52     INFO - GECKO(3953) |  => mAdoptCount:           1915
[task 2018-08-21T01:52:52.799Z] 01:52:52     INFO - GECKO(3953) |  => mAdoptFreeCount:       1923
[task 2018-08-21T01:52:52.800Z] 01:52:52     INFO - GECKO(3953) |  => Process ID: 4117, Thread ID: 140417051318080
[task 2018-08-21T01:52:52.817Z] 01:52:52     INFO - GECKO(3953) | nsStringStats
[task 2018-08-21T01:52:52.817Z] 01:52:52     INFO - GECKO(3953) |  => mAllocCount:          49766
[task 2018-08-21T01:52:52.818Z] 01:52:52     INFO - GECKO(3953) |  => mReallocCount:            0
[task 2018-08-21T01:52:52.818Z] 01:52:52     INFO - GECKO(3953) |  => mFreeCount:           49766
[task 2018-08-21T01:52:52.819Z] 01:52:52     INFO - GECKO(3953) |  => mShareCount:          52137
[task 2018-08-21T01:52:52.819Z] 01:52:52     INFO - GECKO(3953) |  => mAdoptCount:           2597
[task 2018-08-21T01:52:52.820Z] 01:52:52     INFO - GECKO(3953) |  => mAdoptFreeCount:       2613
[task 2018-08-21T01:52:52.821Z] 01:52:52     INFO - GECKO(3953) |  => Process ID: 4086, Thread ID: 140699126552384
[task 2018-08-21T01:52:52.878Z] 01:52:52     INFO - GECKO(3953) | nsStringStats
[task 2018-08-21T01:52:52.879Z] 01:52:52     INFO - GECKO(3953) |  => mAllocCount:          57686
[task 2018-08-21T01:52:52.880Z] 01:52:52     INFO - GECKO(3953) |  => mReallocCount:            0
[task 2018-08-21T01:52:52.882Z] 01:52:52     INFO - GECKO(3953) |  => mFreeCount:           57686
[task 2018-08-21T01:52:52.883Z] 01:52:52     INFO - GECKO(3953) |  => mShareCount:         114301
[task 2018-08-21T01:52:52.884Z] 01:52:52     INFO - GECKO(3953) |  => mAdoptCount:           2165
[task 2018-08-21T01:52:52.885Z] 01:52:52     INFO - GECKO(3953) |  => mAdoptFreeCount:       2205
[task 2018-08-21T01:52:52.886Z] 01:52:52     INFO - GECKO(3953) |  => Process ID: 4043, Thread ID: 139877004306240
[task 2018-08-21T01:52:53.032Z] 01:52:53     INFO - GECKO(3953) | 1534816373026	Marionette	DEBUG	Received observer notification xpcom-will-shutdown
[task 2018-08-21T01:52:53.033Z] 01:52:53     INFO - GECKO(3953) | 1534816373027	Marionette	INFO	Stopped listening on port 2828
[task 2018-08-21T01:52:53.034Z] 01:52:53     INFO - GECKO(3953) | 1534816373028	Marionette	DEBUG	Remote service is inactive
[task 2018-08-21T01:52:53.051Z] 01:52:53     INFO - GECKO(3953) | [Parent 3953, Main Thread] WARNING: NS_ENSURE_TRUE(mDB) failed: file /builds/worker/workspace/build/src/netwerk/cache/nsDiskCacheDeviceSQL.cpp, line 1422
[task 2018-08-21T01:52:53.291Z] 01:52:53     INFO - GECKO(3953) | [Parent 3953, Main Thread] WARNING: NS_ENSURE_TRUE(maybeContext) failed: file /builds/worker/workspace/build/src/xpcom/threads/nsThread.cpp, line 866
[task 2018-08-21T01:52:54.151Z] 01:52:54     INFO - GECKO(3953) | [Parent 3953, Main Thread] WARNING: NS_ENSURE_TRUE(!mHasOrHasHadOwnerWindow || mOwnerWindow) failed: file /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/DOMEventTargetHelper.h, line 146
[task 2018-08-21T01:52:54.160Z] 01:52:54     INFO - GECKO(3953) | [Parent 3953, Main Thread] WARNING: NS_ENSURE_TRUE(!mHasOrHasHadOwnerWindow || mOwnerWindow) failed: file /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/DOMEventTargetHelper.h, line 146
[task 2018-08-21T01:52:54.303Z] 01:52:54     INFO - GECKO(3953) | --DOMWINDOW == 13 (0x7f10a717c000) [pid = 3953] [serial = 91] [outer = (nil)] [url = chrome://browser/content/places/historySidebar.xul]
[task 2018-08-21T01:52:54.304Z] 01:52:54     INFO - GECKO(3953) | --DOMWINDOW == 12 (0x7f10a184a800) [pid = 3953] [serial = 90] [outer = (nil)] [url = chrome://browser/content/places/bookmarksSidebar.xul]
[task 2018-08-21T01:52:54.313Z] 01:52:54     INFO - GECKO(3953) | --DOMWINDOW == 11 (0x7f10a08e7400) [pid = 3953] [serial = 101] [outer = (nil)] [url = about:blank]
[task 2018-08-21T01:52:54.318Z] 01:52:54     INFO - GECKO(3953) | --DOMWINDOW == 10 (0x7f10a87d4c00) [pid = 3953] [serial = 6] [outer = (nil)] [url = about:blank]
[task 2018-08-21T01:52:54.319Z] 01:52:54     INFO - GECKO(3953) | --DOCSHELL 0x7f10a0ba7000 == 5 [pid = 3953] [id = {d8f238d7-e6fb-419d-8351-62a8099f0dc9}]
[task 2018-08-21T01:52:54.322Z] 01:52:54     INFO - GECKO(3953) | --DOMWINDOW == 9 (0x7f10af52c600) [pid = 3953] [serial = 3] [outer = (nil)] [url = chrome://browser/content/browser.xul]
[task 2018-08-21T01:52:54.325Z] 01:52:54     INFO - GECKO(3953) | --DOMWINDOW == 8 (0x7f10a0929200) [pid = 3953] [serial = 17] [outer = (nil)] [url = chrome://mochikit/content/browser-harness.xul]
[task 2018-08-21T01:52:54.327Z] 01:52:54     INFO - GECKO(3953) | --DOCSHELL 0x7f10a9477800 == 4 [pid = 3953] [id = {01e18f18-e718-42bc-8468-9135b62b137e}]
[task 2018-08-21T01:52:54.330Z] 01:52:54     INFO - GECKO(3953) | --DOCSHELL 0x7f10a801f000 == 3 [pid = 3953] [id = {417ea8c0-b379-4888-9bc5-a3fdbe774684}]
[task 2018-08-21T01:52:54.333Z] 01:52:54     INFO - GECKO(3953) | --DOMWINDOW == 7 (0x7f10a5123400) [pid = 3953] [serial = 18] [outer = (nil)] [url = about:blank]
[task 2018-08-21T01:52:54.334Z] 01:52:54     INFO - GECKO(3953) | --DOMWINDOW == 6 (0x7f10a7def200) [pid = 3953] [serial = 13] [outer = (nil)] [url = chrome://extensions/content/dummy.xul]
[task 2018-08-21T01:52:54.337Z] 01:52:54     INFO - GECKO(3953) | --DOCSHELL 0x7f10ae11c000 == 2 [pid = 3953] [id = {b7090386-c2ed-42e7-b769-c2004705c435}]
[task 2018-08-21T01:52:54.339Z] 01:52:54     INFO - GECKO(3953) | --DOMWINDOW == 5 (0x7f10a512bc00) [pid = 3953] [serial = 16] [outer = (nil)] [url = chrome://extensions/content/dummy.xul]
[task 2018-08-21T01:52:54.340Z] 01:52:54     INFO - GECKO(3953) | --DOMWINDOW == 4 (0x7f10a7d18800) [pid = 3953] [serial = 10] [outer = (nil)] [url = chrome://extensions/content/dummy.xul]
[task 2018-08-21T01:52:54.342Z] 01:52:54     INFO - GECKO(3953) | --DOCSHELL 0x7f10a7fd7000 == 1 [pid = 3953] [id = {81b451ce-6a81-4aa5-9b16-52dae4d66b08}]
[task 2018-08-21T01:52:54.343Z] 01:52:54     INFO - GECKO(3953) | --DOMWINDOW == 3 (0x7f10a7fb5c00) [pid = 3953] [serial = 8] [outer = (nil)] [url = chrome://extensions/content/dummy.xul]
[task 2018-08-21T01:52:54.344Z] 01:52:54     INFO - GECKO(3953) | --DOCSHELL 0x7f10ad76e000 == 0 [pid = 3953] [id = {0471a228-9c9e-4d93-a0f9-7d9d13dd0dc4}]
[task 2018-08-21T01:52:54.346Z] 01:52:54     INFO - GECKO(3953) | --DOMWINDOW == 2 (0x7f10ad896800) [pid = 3953] [serial = 1] [outer = (nil)] [url = resource://gre-resources/hiddenWindow.html]
[task 2018-08-21T01:52:54.347Z] 01:52:54     INFO - GECKO(3953) | --DOMWINDOW == 1 (0x7f10a940c800) [pid = 3953] [serial = 5] [outer = (nil)] [url = resource://gre-resources/hiddenWindow.html]
[task 2018-08-21T01:52:54.348Z] 01:52:54     INFO - GECKO(3953) | --DOMWINDOW == 0 (0x7f10a9404c00) [pid = 3953] [serial = 4] [outer = (nil)] [url = about:blank]
[task 2018-08-21T01:52:54.406Z] 01:52:54     INFO - GECKO(3953) | nsStringStats
[task 2018-08-21T01:52:54.408Z] 01:52:54     INFO - GECKO(3953) |  => mAllocCount:         281881
[task 2018-08-21T01:52:54.409Z] 01:52:54     INFO - GECKO(3953) |  => mReallocCount:            0
[task 2018-08-21T01:52:54.410Z] 01:52:54     INFO - GECKO(3953) |  => mFreeCount:          281881
[task 2018-08-21T01:52:54.411Z] 01:52:54     INFO - GECKO(3953) |  => mShareCount:         300707
[task 2018-08-21T01:52:54.412Z] 01:52:54     INFO - GECKO(3953) |  => mAdoptCount:           7048
[task 2018-08-21T01:52:54.413Z] 01:52:54     INFO - GECKO(3953) |  => mAdoptFreeCount:       7268
[task 2018-08-21T01:52:54.413Z] 01:52:54     INFO - GECKO(3953) |  => Process ID: 3953, Thread ID: 139710087325504
[task 2018-08-21T01:52:54.433Z] 01:52:54     INFO - TEST-INFO | Main app process: exit 0
[task 2018-08-21T01:52:54.434Z] 01:52:54    ERROR - TEST-UNEXPECTED-FAIL | toolkit/components/extensions/test/browser/browser_ext_themes_sidebars.js | leaked 1 window(s) until shutdown [url = chrome://browser/content/places/bookmarksSidebar.xul]
[task 2018-08-21T01:52:54.436Z] 01:52:54    ERROR - TEST-UNEXPECTED-FAIL | toolkit/components/extensions/test/browser/browser_ext_themes_sidebars.js | leaked 1 window(s) until shutdown [url = chrome://browser/content/places/historySidebar.xul]
[task 2018-08-21T01:52:54.437Z] 01:52:54     INFO - TEST-INFO | toolkit/components/extensions/test/browser/browser_ext_themes_sidebars.js | windows(s) leaked: [pid = 3953] [serial = 90], [pid = 3953] [serial = 91]
[task 2018-08-21T01:52:54.438Z] 01:52:54     INFO - runtests.py | Application ran for: 0:02:12.769326
Flags: needinfo?(ntim.bugs)
Depends on: 1485017
https://hg.mozilla.org/mozilla-central/rev/e751eeb6e032
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla63
Flags: needinfo?(ntim.bugs)
Depends on: 1485599
Depends on: 1484512
Is manual QA needed on this bug? If yes, please provide a test webextension and some STRs, else add the "qe-verify-" flag.
Flags: needinfo?(ntim.bugs)
Covered by tests.
Flags: needinfo?(ntim.bugs) → qe-verify-
Keywords: dev-doc-needed
Depends on: 1488000
Blocks: 1488000
No longer depends on: 1488000
I need some help on this one. I'm not sure exactly what it is that I need to document here. I understand that this bug changes the behavior of Firefox to apply theme values to sidebars like the bookmarks sidebar, but I'm not sure what, if anything, the theme creator has to do in order to implement this. Is it automatic? Is it a user setting?

Sorry to be so dense, but I can't pick out anything here that makes sense to me in terms of what I need to document.
Flags: needinfo?(ntim.bugs)
(In reply to Irene Smith from comment #54)
> I need some help on this one. I'm not sure exactly what it is that I need to
> document here. I understand that this bug changes the behavior of Firefox to
> apply theme values to sidebars like the bookmarks sidebar, but I'm not sure
> what, if anything, the theme creator has to do in order to implement this.
> Is it automatic? Is it a user setting?
> 
> Sorry to be so dense, but I can't pick out anything here that makes sense to
> me in terms of what I need to document.

This bug adds theme properties under the colors section that change the appearance of the built-in sidebars (bookmarks/history/synced tabs):

- sidebar: the background color of the sidebars
- sidebar_text: the text color of the sidebars
- sidebar_highlight: the background color of the selected and focused item in the sidebars
- sidebar_highlight_text: the text color of the selected and focused item in the sidebars

I’ve already listed those in the list of properties in the MDN page, but I did not have time to add screenshots/examples and the compat data (these are properties only in Firefox 63+).

Please let me know if you have any questions.
Flags: needinfo?(ntim.bugs)
(In reply to Tim Nguyen :ntim from comment #55)
> (In reply to Irene Smith from comment #54)
> > I need some help on this one. I'm not sure exactly what it is that I need to
> > document here. I understand that this bug changes the behavior of Firefox to
> > apply theme values to sidebars like the bookmarks sidebar, but I'm not sure
> > what, if anything, the theme creator has to do in order to implement this.
> > Is it automatic? Is it a user setting?
> > 
> > Sorry to be so dense, but I can't pick out anything here that makes sense to
> > me in terms of what I need to document.
> 
> This bug adds theme properties under the colors section that change the
> appearance of the built-in sidebars (bookmarks/history/synced tabs):
> 
> - sidebar: the background color of the sidebars
> - sidebar_text: the text color of the sidebars
> - sidebar_highlight: the background color of the selected and focused item
> in the sidebars
> - sidebar_highlight_text: the text color of the selected and focused item in
> the sidebars
> 
> I’ve already listed those in the list of properties in the MDN page, but I
> did not have time to add screenshots/examples and the compat data (these are
> properties only in Firefox 63+).
> 
> Please let me know if you have any questions.

Thanks! I saw the new properties and will create an example that uses them.
Examples were created and the list of properties was added to the release notes:

Themes can now define the colors for sidebars, such as the bookmarks sidebar (bug 1418602). The relevant properties include:

    sidebar: The background color for sidebars.
    sidebar_text: The text color for sidebars.
    sidebar_highlight: The background color of a selected item in a sidebar.
    sidebar_highlight_text: The text color of a selected item in a sidebar.
You need to log in before you can comment on or make changes to this bug.