Skip to content

Instantly share code, notes, and snippets.

View bgrins's full-sized avatar

Brian Grinstead bgrins

View GitHub Profile
@bgrins
bgrins / xul-grids-list.txt
Created January 16, 2019 21:51
grids list
XUL grids list:
browser/base/content/pageinfo/pageInfo.xul
browser/base/content/sanitize.xul
browser/components/preferences/languages.xul
browser/components/preferences/connection.xul
browser/components/preferences/sanitize.xul
browser/components/preferences/browserLanguages.xul
browser/components/preferences/fonts.xul
browser/components/preferences/in-content/main.xul
@bgrins
bgrins / chrome-failures.txt
Last active November 7, 2018 19:25
Created by visiting http://localhost:8000/html/dom/reflection-original.html with the patch in https://phabricator.services.mozilla.com/D3824 applied (and the expected failures in testing/web-platform/meta/html/dom/reflection-obsolete.html.ini commented out). Run `./mach wpt testing/web-platform/tests/html/dom/reflection-obsolete.html`
marquee.loop: IDL get with DOM attribute unset (expected 0, got -1)
marquee.loop: setAttribute() to -36 followed by IDL get (expected -36, got -1)
marquee.loop: setAttribute() to 0 followed by IDL get (expected 0, got -1)
marquee.loop: setAttribute() to -2147483648 followed by IDL get (expected -2147483648, got -1)
marquee.loop: setAttribute() to 2147483648 followed by IDL get (expected 0, got -1)
marquee.loop: setAttribute() to -2147483649 followed by IDL get (expected 0, got -1)
marquee.loop: setAttribute() to 4294967295 followed by IDL get (expected 0, got -1)
marquee.loop: setAttribute() to 4294967296 followed by IDL get (expected 0, got -1)
marquee.loop: setAttribute() to "" followed by IDL get (expected 0, got -1)
marquee.loop: setAttribute() to "-0" followed by IDL get (expected 0, got -1)
# https://github.com/mstange/analyze-tryserver-profiles/blob/master/symbolicate_profile.py
python symbolicate_profile.py profile.json
curl 'https://profile-store.appspot.com/compressed-store' --compressed --data-binary @profile.json.sym.gz | awk '{print "Hosted at: https://perf-html.io/public/"$1}'
var anonElements = [];
var walker = Cc["@mozilla.org/inspector/deep-tree-walker;1"].
createInstance(Ci.inIDeepTreeWalker);
walker.showAnonymousContent = true;
walker.showSubDocuments = false;
walker.showDocumentsAsNodes = false;
walker.init(document.documentElement, NodeFilter.SHOW_ELEMENT);
while (walker.nextNode()) {
@bgrins
bgrins / _.sh
Last active April 11, 2018 19:12
./mach run --new-tab --url data:text/html, --new-tab --url data:text/html,
var el = window.document.createElementNS("http://www.w3.org/1999/xhtml", "canvas");
el.width = window.innerWidth;
el.height = window.innerHeight;
var ctx = el.getContext("2d");
SpecialPowers.wrap(ctx).drawWindow(window, 0, 0, window.innerWidth, window.innerHeight, "rgba(0,0,0,0)",
ctx.DRAWWINDOW_USE_WIDGET_LAYERS | ctx.DRAWWINDOW_DRAW_VIEW | ctx.DRAWWINDOW_DRAW_CARET);
dump("\n" + el.toDataURL() + "\n");
2292200 lines and 133 unique binding+tagname combos
66 tagnames with xbl bindings attached: [
"arrowscrollbox",
"autorepeatbutton",
"browser",
"button",
"caption",
"checkbox",
"deck",
"description",
@bgrins
bgrins / app.html
Last active March 6, 2018 21:14
Lazy Custom Element registrations
<script src="app.js"></script>
<element-1 />
<element-2 />
TypeError: can't convert undefined to object
Stack trace:
getProps@resource://devtools/shared/base-loader.js -> resource://devtools/client/shared/components/reps/reps.js:1170:26
propIterator@resource://devtools/shared/base-loader.js -> resource://devtools/client/shared/components/reps/reps.js:1101:20
safePropIterator@resource://devtools/shared/base-loader.js -> resource://devtools/client/shared/components/reps/reps.js:1058:12
GripRep@resource://devtools/shared/base-loader.js -> resource://devtools/client/shared/components/reps/reps.js:1022:20
wrappedFunction@resource://devtools/shared/base-loader.js -> resource://devtools/client/shared/components/reps/reps.js:332:14
Rep@resource://devtools/shared/base-loader.js -> resource://devtools/client/shared/components/reps/reps.js:579:10
renderGrip@resource://devtools/shared/base-loader.js -> resource://devtools/client/shared/components/reps/reps.js:5141:12
renderTreeItem@resource://devtools/shared/base-loader.js -> resource://devtools/client/shared/components/reps/rep
#define MAC_NON_BROWSER_WINDOW
# All JS files which are not content (only) dependent that browser.xul
# wishes to include *must* go into the global-scripts.inc file
# so that they can be shared by this overlay.
#include global-scripts.inc
<script type="application/javascript">
function OpenBrowserWindowFromDockMenu(options) {
let win = OpenBrowserWindow(options);