Bug 1260877 - Add a `chromeContext` property to ConsoleMessage. r=bgrins.
authorNicolas Chevobbe <nchevobbe@mozilla.com>
Tue, 16 Apr 2019 09:08:34 +0000
changeset 469649 b5164ff07d12
parent 469648 728aa342ad35
child 469650 8186ed6d36ff
push id35878
push userapavel@mozilla.com
push dateTue, 16 Apr 2019 15:43:40 +0000
treeherdermozilla-central@258af4e91151 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbgrins
bugs1260877
milestone68.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 1260877 - Add a `chromeContext` property to ConsoleMessage. r=bgrins. This property was already in console api message packet, and this patch also adds it to pageError packets (retrieving it from nsIScriptError.isFromChromeContext). Stubs are updated to include the new property. Differential Revision: https://phabricator.services.mozilla.com/D26336
devtools/client/webconsole/test/fixtures/stubs/consoleApi.js
devtools/client/webconsole/test/fixtures/stubs/cssMessage.js
devtools/client/webconsole/test/fixtures/stubs/evaluationResult.js
devtools/client/webconsole/test/fixtures/stubs/pageError.js
devtools/client/webconsole/types.js
devtools/client/webconsole/utils/messages.js
devtools/server/actors/webconsole.js
--- a/devtools/client/webconsole/test/fixtures/stubs/consoleApi.js
+++ b/devtools/client/webconsole/test/fixtures/stubs/consoleApi.js
@@ -38,17 +38,18 @@ stubPreparedMessages.set(`console.log('f
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.log(undefined)`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924479,
@@ -72,17 +73,18 @@ stubPreparedMessages.set(`console.log(un
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.warn('danger, will robinson!')`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924487,
@@ -104,17 +106,18 @@ stubPreparedMessages.set(`console.warn('
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.log(NaN)`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924495,
@@ -138,17 +141,18 @@ stubPreparedMessages.set(`console.log(Na
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.log(null)`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924501,
@@ -172,17 +176,18 @@ stubPreparedMessages.set(`console.log(nu
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.log('鼬')`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924506,
@@ -204,17 +209,18 @@ stubPreparedMessages.set(`console.log('鼬')`, new ConsoleMessage({
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.clear()`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924512,
@@ -236,17 +242,18 @@ stubPreparedMessages.set(`console.clear(
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.count('bar')`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924515,
@@ -266,17 +273,18 @@ stubPreparedMessages.set(`console.count(
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.assert(false, {message: 'foobar'})`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924521,
@@ -329,17 +337,18 @@ stubPreparedMessages.set(`console.assert
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.log('hello \nfrom \rthe \"string world!')`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924528,
@@ -361,17 +370,18 @@ stubPreparedMessages.set(`console.log('h
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.log('úṇĩçödê țĕșť')`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924586,
@@ -393,17 +403,18 @@ stubPreparedMessages.set(`console.log('úṇĩçödê țĕșť')`, new ConsoleMessage({
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.dirxml(window)`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924596,
@@ -437,17 +448,18 @@ stubPreparedMessages.set(`console.dirxml
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.log('myarray', ['red', 'green', 'blue'])`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924604,
@@ -487,17 +499,18 @@ stubPreparedMessages.set(`console.log('m
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.log('myregex', /a.b.c/)`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924610,
@@ -529,17 +542,18 @@ stubPreparedMessages.set(`console.log('m
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.table(['red', 'green', 'blue']);`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924612,
@@ -578,17 +592,18 @@ stubPreparedMessages.set(`console.table(
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.log('myobject', {red: 'redValue', green: 'greenValue', blue: 'blueValue'});`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924614,
@@ -646,17 +661,18 @@ stubPreparedMessages.set(`console.log('m
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.debug('debug message');`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924621,
@@ -678,17 +694,18 @@ stubPreparedMessages.set(`console.debug(
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.info('info message');`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924625,
@@ -710,17 +727,18 @@ stubPreparedMessages.set(`console.info('
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.error('error message');`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924628,
@@ -750,17 +768,18 @@ stubPreparedMessages.set(`console.error(
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.log('mymap')`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924631,
@@ -805,17 +824,18 @@ stubPreparedMessages.set(`console.log('m
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.log('myset')`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924746,
@@ -854,17 +874,18 @@ stubPreparedMessages.set(`console.log('m
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.trace()`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924752,
@@ -906,17 +927,18 @@ stubPreparedMessages.set(`console.trace(
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.trace('bar', {'foo': 'bar'}, [1,2,3])`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1538037986659,
@@ -1002,17 +1024,18 @@ stubPreparedMessages.set(`console.trace(
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.time('bar')`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924757,
@@ -1032,17 +1055,18 @@ stubPreparedMessages.set(`console.time('
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`timerAlreadyExists`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924758,
@@ -1062,17 +1086,18 @@ stubPreparedMessages.set(`timerAlreadyEx
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.timeLog('bar') - 1`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1526920999996,
@@ -1094,17 +1119,18 @@ stubPreparedMessages.set(`console.timeLo
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.timeLog('bar') - 2`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1526920999996,
@@ -1151,17 +1177,18 @@ stubPreparedMessages.set(`console.timeLo
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.timeEnd('bar')`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924759,
@@ -1181,17 +1208,18 @@ stubPreparedMessages.set(`console.timeEn
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`timeEnd.timerDoesntExist`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1526920999998,
@@ -1211,17 +1239,18 @@ stubPreparedMessages.set(`timeEnd.timerD
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`timeLog.timerDoesntExist`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1526920999999,
@@ -1241,17 +1270,18 @@ stubPreparedMessages.set(`timeLog.timerD
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.table('bar')`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924801,
@@ -1273,17 +1303,18 @@ stubPreparedMessages.set(`console.table(
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.table(['a', 'b', 'c'])`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924859,
@@ -1322,17 +1353,18 @@ stubPreparedMessages.set(`console.table(
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.group('bar')`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924863,
@@ -1354,17 +1386,18 @@ stubPreparedMessages.set(`console.group(
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.groupEnd('bar')`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924864,
@@ -1384,17 +1417,18 @@ stubPreparedMessages.set(`console.groupE
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.groupCollapsed('foo')`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924870,
@@ -1416,17 +1450,18 @@ stubPreparedMessages.set(`console.groupC
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.groupEnd('foo')`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924871,
@@ -1446,17 +1481,18 @@ stubPreparedMessages.set(`console.groupE
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.group()`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924878,
@@ -1478,17 +1514,18 @@ stubPreparedMessages.set(`console.group(
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.groupEnd()`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924879,
@@ -1508,17 +1545,18 @@ stubPreparedMessages.set(`console.groupE
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.log(%cfoobar)`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924883,
@@ -1544,17 +1582,18 @@ stubPreparedMessages.set(`console.log(%c
   "exceptionDocURL": null,
   "userProvidedStyles": [
     "color:blue; font-size:1.3em; background:url('http://example.com/test'); position:absolute; top:10px; ",
     "color:red; line-height: 1.5; background:url('http://example.com/test')"
   ],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.log("%cHello%c|%cWorld")`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1518681614352,
@@ -1582,17 +1621,18 @@ stubPreparedMessages.set(`console.log("%
   "userProvidedStyles": [
     "color:red",
     "",
     "color: blue"
   ],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.group(%cfoo%cbar)`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924887,
@@ -1618,17 +1658,18 @@ stubPreparedMessages.set(`console.group(
   "exceptionDocURL": null,
   "userProvidedStyles": [
     "color:blue;font-size:1.3em;background:url('http://example.com/test');position:absolute;top:10px",
     "color:red;background:url('http://example.com/test')"
   ],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.groupEnd(%cfoo%cbar)`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924887,
@@ -1648,17 +1689,18 @@ stubPreparedMessages.set(`console.groupE
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.groupCollapsed(%cfoo%cbaz)`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924892,
@@ -1684,17 +1726,18 @@ stubPreparedMessages.set(`console.groupC
   "exceptionDocURL": null,
   "userProvidedStyles": [
     "color:blue;font-size:1.3em;background:url('http://example.com/test');position:absolute;top:10px",
     "color:red;background:url('http://example.com/test')"
   ],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.groupEnd(%cfoo%cbaz)`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924893,
@@ -1714,17 +1757,18 @@ stubPreparedMessages.set(`console.groupE
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.dir({C, M, Y, K})`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1502884924899,
@@ -1787,17 +1831,18 @@ stubPreparedMessages.set(`console.dir({C
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.count | default: 1`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1511365913333,
@@ -1817,17 +1862,18 @@ stubPreparedMessages.set(`console.count 
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.count | default: 2`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1511365913334,
@@ -1847,17 +1893,18 @@ stubPreparedMessages.set(`console.count 
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.count | test counter: 1`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1511365913334,
@@ -1877,17 +1924,18 @@ stubPreparedMessages.set(`console.count 
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.count | test counter: 2`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1511365913334,
@@ -1907,17 +1955,18 @@ stubPreparedMessages.set(`console.count 
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.count | default: 3`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1511365913334,
@@ -1937,17 +1986,18 @@ stubPreparedMessages.set(`console.count 
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.count | clear`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1511365913334,
@@ -1969,17 +2019,18 @@ stubPreparedMessages.set(`console.count 
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.count | default: 4`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1511365913335,
@@ -1999,17 +2050,18 @@ stubPreparedMessages.set(`console.count 
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.count | test counter: 3`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1511365913335,
@@ -2029,17 +2081,18 @@ stubPreparedMessages.set(`console.count 
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.countReset | test counter: 0`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1526920412190,
@@ -2059,17 +2112,18 @@ stubPreparedMessages.set(`console.countR
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`console.countReset | counterDoesntExist`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "console-api",
   "timeStamp": 1526920412191,
@@ -2089,17 +2143,18 @@ stubPreparedMessages.set(`console.countR
   },
   "groupId": null,
   "errorMessageName": null,
   "exceptionDocURL": null,
   "userProvidedStyles": [],
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPackets.set(`console.log('foobar', 'test')`, {
   "message": {
     "addonId": "",
     "arguments": [
       "foobar",
       "test"
--- a/devtools/client/webconsole/test/fixtures/stubs/cssMessage.js
+++ b/devtools/client/webconsole/test/fixtures/stubs/cssMessage.js
@@ -34,17 +34,18 @@ stubPreparedMessages.set(`Unknown property ‘such-unknown-property’.  Declaration dropped.`, new ConsoleMessage({
     "column": 25
   },
   "groupId": null,
   "errorMessageName": "",
   "userProvidedStyles": null,
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`Error in parsing value for ‘padding-top’.  Declaration dropped.`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": 15032385539,
   "allowRepeating": true,
   "source": "css",
   "timeStamp": 1479159920465,
@@ -63,17 +64,18 @@ stubPreparedMessages.set(`Error in parsing value for ‘padding-top’.  Declaration dropped.`, new ConsoleMessage({
     "column": 16
   },
   "groupId": null,
   "errorMessageName": "",
   "userProvidedStyles": null,
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPackets.set(`Unknown property ‘such-unknown-property’.  Declaration dropped.`, {
   "pageError": {
     "errorMessage": "Unknown property ‘such-unknown-property’.  Declaration dropped.",
     "errorMessageName": "",
     "sourceName": "http://example.com/browser/devtools/client/webconsole/test/fixtures/stub-generators/test-css-message.html",
     "sourceId": null,
@@ -85,17 +87,18 @@ stubPackets.set(`Unknown property ‘such-unknown-property’.  Declaration dropped.`, {
     "timeStamp": 1479159920406,
     "warning": true,
     "error": false,
     "exception": false,
     "strict": false,
     "info": false,
     "private": false,
     "stacktrace": null,
-    "notes": null
+    "notes": null,
+    "chromeContext": false
   },
   "type": "pageError",
   "from": "server1.conn0.child1/consoleActor2"
 });
 
 stubPackets.set(`Error in parsing value for ‘padding-top’.  Declaration dropped.`, {
   "pageError": {
     "errorMessage": "Error in parsing value for ‘padding-top’.  Declaration dropped.",
@@ -110,17 +113,18 @@ stubPackets.set(`Error in parsing value for ‘padding-top’.  Declaration dropped.`, {
     "timeStamp": 1479159920465,
     "warning": true,
     "error": false,
     "exception": false,
     "strict": false,
     "info": false,
     "private": false,
     "stacktrace": null,
-    "notes": null
+    "notes": null,
+    "chromeContext": false
   },
   "type": "pageError",
   "from": "server1.conn0.child1/consoleActor2"
 });
 
 module.exports = {
   stubPreparedMessages,
   stubPackets,
--- a/devtools/client/webconsole/test/fixtures/stubs/evaluationResult.js
+++ b/devtools/client/webconsole/test/fixtures/stubs/evaluationResult.js
@@ -39,17 +39,18 @@ stubPreparedMessages.set(`new Date(0)`, 
   ],
   "repeatId": "{\"frame\":null,\"groupId\":null,\"indent\":0,\"level\":\"log\",\"parameters\":[{\"type\":\"object\",\"actor\":\"server1.conn0.child1/obj30\",\"class\":\"Date\",\"extensible\":true,\"frozen\":false,\"sealed\":false,\"ownPropertyLength\":0,\"preview\":{\"timestamp\":0}}],\"source\":\"javascript\",\"type\":\"result\",\"userProvidedStyles\":null,\"stacktrace\":null}",
   "stacktrace": null,
   "frame": null,
   "groupId": null,
   "userProvidedStyles": null,
   "notes": null,
   "indent": 0,
-  "prefix": ""
+  "prefix": "",
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`asdf()`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "javascript",
   "timeStamp": 1479159921377,
@@ -71,17 +72,18 @@ stubPreparedMessages.set(`asdf()`, new C
     "column": 1
   },
   "groupId": null,
   "errorMessageName": "JSMSG_NOT_DEFINED",
   "exceptionDocURL": "https://developer.mozilla.org/docs/Web/JavaScript/Reference/Errors/Not_defined?utm_source=mozilla&utm_medium=firefox-console-errors&utm_campaign=default",
   "userProvidedStyles": null,
   "notes": null,
   "indent": 0,
-  "prefix": ""
+  "prefix": "",
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`1 + @`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "javascript",
   "timeStamp": 1479159921399,
@@ -103,17 +105,18 @@ stubPreparedMessages.set(`1 + @`, new Co
     "column": 4
   },
   "groupId": null,
   "errorMessageName": "JSMSG_ILLEGAL_CHARACTER",
   "exceptionDocURL": "https://developer.mozilla.org/docs/Web/JavaScript/Reference/Errors/Illegal_character?utm_source=mozilla&utm_medium=firefox-console-errors&utm_campaign=default",
   "userProvidedStyles": null,
   "notes": null,
   "indent": 0,
-  "prefix": ""
+  "prefix": "",
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`inspect({a: 1})`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "javascript",
   "timeStamp": 1499776070751,
@@ -149,17 +152,18 @@ stubPreparedMessages.set(`inspect({a: 1}
   ],
   "repeatId": "{\"frame\":null,\"groupId\":null,\"indent\":0,\"level\":\"log\",\"parameters\":[{\"type\":\"object\",\"actor\":\"server1.conn0.child1/obj35\",\"class\":\"Object\",\"extensible\":true,\"frozen\":false,\"sealed\":false,\"ownPropertyLength\":1,\"preview\":{\"kind\":\"Object\",\"ownProperties\":{\"a\":{\"configurable\":true,\"enumerable\":true,\"writable\":true,\"value\":1}},\"ownSymbols\":[],\"ownPropertiesLength\":1,\"ownSymbolsLength\":0,\"safeGetterValues\":{}}}],\"source\":\"javascript\",\"type\":\"result\",\"userProvidedStyles\":null,\"stacktrace\":null}",
   "stacktrace": null,
   "frame": null,
   "groupId": null,
   "userProvidedStyles": null,
   "notes": null,
   "indent": 0,
-  "prefix": ""
+  "prefix": "",
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`cd(document)`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "javascript",
   "timeStamp": 1510650094657,
@@ -175,17 +179,18 @@ stubPreparedMessages.set(`cd(document)`,
   ],
   "repeatId": "{\"frame\":null,\"groupId\":null,\"indent\":0,\"level\":\"error\",\"messageText\":\"Cannot cd() to the given window. Invalid argument.\",\"parameters\":[{\"type\":\"undefined\"}],\"source\":\"javascript\",\"type\":\"result\",\"userProvidedStyles\":null,\"stacktrace\":null}",
   "stacktrace": null,
   "frame": null,
   "groupId": null,
   "userProvidedStyles": null,
   "notes": null,
   "indent": 0,
-  "prefix": ""
+  "prefix": "",
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`undefined`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "javascript",
   "timeStamp": 1518606917356,
@@ -200,17 +205,18 @@ stubPreparedMessages.set(`undefined`, ne
   ],
   "repeatId": "{\"frame\":null,\"groupId\":null,\"indent\":0,\"level\":\"log\",\"parameters\":[{\"type\":\"undefined\"}],\"source\":\"javascript\",\"type\":\"result\",\"userProvidedStyles\":null,\"stacktrace\":null}",
   "stacktrace": null,
   "frame": null,
   "groupId": null,
   "userProvidedStyles": null,
   "notes": null,
   "indent": 0,
-  "prefix": ""
+  "prefix": "",
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`longString message Error`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "javascript",
   "timeStamp": 1493108241073,
@@ -231,17 +237,18 @@ stubPreparedMessages.set(`longString mes
   ],
   "repeatId": "{\"frame\":null,\"groupId\":null,\"indent\":0,\"level\":\"error\",\"messageText\":{\"type\":\"longString\",\"initial\":\"Error: Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Long error Lon\",\"length\":110007,\"actor\":\"server1.conn0.child1/longString37\"},\"parameters\":[{\"type\":\"undefined\"}],\"source\":\"javascript\",\"type\":\"result\",\"userProvidedStyles\":null,\"stacktrace\":null}",
   "stacktrace": null,
   "frame": null,
   "groupId": null,
   "userProvidedStyles": null,
   "notes": null,
   "indent": 0,
-  "prefix": ""
+  "prefix": "",
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`eval throw ""`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "javascript",
   "timeStamp": 1517990289517,
@@ -257,17 +264,18 @@ stubPreparedMessages.set(`eval throw ""`
   ],
   "repeatId": "{\"frame\":null,\"groupId\":null,\"indent\":0,\"level\":\"error\",\"messageText\":\"Error\",\"parameters\":[{\"type\":\"undefined\"}],\"source\":\"javascript\",\"type\":\"result\",\"userProvidedStyles\":null,\"stacktrace\":null}",
   "stacktrace": null,
   "frame": null,
   "groupId": null,
   "userProvidedStyles": null,
   "notes": null,
   "indent": 0,
-  "prefix": ""
+  "prefix": "",
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`eval throw "tomato"`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": null,
   "allowRepeating": true,
   "source": "javascript",
   "timeStamp": 1517990289520,
@@ -283,17 +291,18 @@ stubPreparedMessages.set(`eval throw "to
   ],
   "repeatId": "{\"frame\":null,\"groupId\":null,\"indent\":0,\"level\":\"error\",\"messageText\":\"Error: tomato\",\"parameters\":[{\"type\":\"undefined\"}],\"source\":\"javascript\",\"type\":\"result\",\"userProvidedStyles\":null,\"stacktrace\":null}",
   "stacktrace": null,
   "frame": null,
   "groupId": null,
   "userProvidedStyles": null,
   "notes": null,
   "indent": 0,
-  "prefix": ""
+  "prefix": "",
+  "chromeContext": false
 }));
 
 stubPackets.set(`new Date(0)`, {
   "from": "server1.conn0.child1/consoleActor2",
   "input": "new Date(0)",
   "result": {
     "type": "object",
     "actor": "server1.conn0.child1/obj30",
--- a/devtools/client/webconsole/test/fixtures/stubs/pageError.js
+++ b/devtools/client/webconsole/test/fixtures/stubs/pageError.js
@@ -71,17 +71,18 @@ stubPreparedMessages.set(`ReferenceError
   },
   "groupId": null,
   "errorMessageName": "JSMSG_NOT_DEFINED",
   "exceptionDocURL": "https://developer.mozilla.org/docs/Web/JavaScript/Reference/Errors/Not_defined?utm_source=mozilla&utm_medium=firefox-console-errors&utm_campaign=default",
   "userProvidedStyles": null,
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`SyntaxError: redeclaration of let a`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": 6442450949,
   "allowRepeating": true,
   "source": "javascript",
   "timeStamp": 1487992945524,
@@ -126,17 +127,18 @@ stubPreparedMessages.set(`SyntaxError: r
         "sourceId": null,
         "line": 2,
         "column": 6
       }
     }
   ],
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`TypeError longString message`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": 6442450949,
   "allowRepeating": true,
   "source": "javascript",
   "timeStamp": 1493109507061,
@@ -182,17 +184,18 @@ stubPreparedMessages.set(`TypeError long
     "column": 7
   },
   "groupId": null,
   "errorMessageName": "",
   "userProvidedStyles": null,
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`throw ""`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": 6442450949,
   "allowRepeating": true,
   "source": "javascript",
   "timeStamp": 1517942398629,
@@ -228,17 +231,18 @@ stubPreparedMessages.set(`throw ""`, new
   ],
   "frame": null,
   "groupId": null,
   "errorMessageName": "JSMSG_UNCAUGHT_EXCEPTION",
   "userProvidedStyles": null,
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPreparedMessages.set(`throw "tomato"`, new ConsoleMessage({
   "id": "1",
   "innerWindowID": 6442450949,
   "allowRepeating": true,
   "source": "javascript",
   "timeStamp": 1517942398637,
@@ -274,17 +278,18 @@ stubPreparedMessages.set(`throw "tomato"
   ],
   "frame": null,
   "groupId": null,
   "errorMessageName": "JSMSG_UNCAUGHT_EXCEPTION",
   "userProvidedStyles": null,
   "notes": null,
   "indent": 0,
   "prefix": "",
-  "private": false
+  "private": false,
+  "chromeContext": false
 }));
 
 stubPackets.set(`ReferenceError: asdf is not defined`, {
   "pageError": {
     "errorMessage": "ReferenceError: asdf is not defined",
     "errorMessageName": "JSMSG_NOT_DEFINED",
     "exceptionDocURL": "https://developer.mozilla.org/docs/Web/JavaScript/Reference/Errors/Not_defined?utm_source=mozilla&utm_medium=firefox-console-errors&utm_campaign=default",
     "sourceName": "http://example.com/browser/devtools/client/webconsole/test/fixtures/stub-generators/test-console-api.html",
@@ -333,17 +338,18 @@ stubPackets.set(`ReferenceError: asdf is
       {
         "filename": "resource://testing-common/content-task.js",
         "sourceId": null,
         "lineNumber": 60,
         "columnNumber": 29,
         "functionName": null
       }
     ],
-    "notes": null
+    "notes": null,
+    "chromeContext": false
   },
   "type": "pageError",
   "from": "server1.conn0.child1/consoleActor2"
 });
 
 stubPackets.set(`SyntaxError: redeclaration of let a`, {
   "pageError": {
     "errorMessage": "SyntaxError: redeclaration of let a",
@@ -384,17 +390,18 @@ stubPackets.set(`SyntaxError: redeclarat
         "messageBody": "Previously declared at line 2, column 6",
         "frame": {
           "source": "http://example.com/browser/devtools/client/webconsole/test/fixtures/stub-generators/test-console-api.html",
           "sourceId": null,
           "line": 2,
           "column": 6
         }
       }
-    ]
+    ],
+    "chromeContext": false
   },
   "type": "pageError",
   "from": "server1.conn0.child1/consoleActor2"
 });
 
 stubPackets.set(`TypeError longString message`, {
   "pageError": {
     "errorMessage": {
@@ -436,17 +443,18 @@ stubPackets.set(`TypeError longString me
       {
         "filename": "resource://testing-common/content-task.js",
         "sourceId": null,
         "lineNumber": 60,
         "columnNumber": 29,
         "functionName": null
       }
     ],
-    "notes": null
+    "notes": null,
+    "chromeContext": false
   },
   "type": "pageError",
   "from": "server1.conn0.child1/consoleActor2"
 });
 
 stubPackets.set(`throw ""`, {
   "pageError": {
     "errorMessage": "uncaught exception: ",
@@ -483,17 +491,18 @@ stubPackets.set(`throw ""`, {
       {
         "filename": "resource://testing-common/content-task.js",
         "sourceId": null,
         "lineNumber": 60,
         "columnNumber": 29,
         "functionName": null
       }
     ],
-    "notes": null
+    "notes": null,
+    "chromeContext": false
   },
   "type": "pageError",
   "from": "server1.conn0.child1/consoleActor2"
 });
 
 stubPackets.set(`throw "tomato"`, {
   "pageError": {
     "errorMessage": "uncaught exception: tomato",
@@ -530,17 +539,18 @@ stubPackets.set(`throw "tomato"`, {
       {
         "filename": "resource://testing-common/content-task.js",
         "sourceId": null,
         "lineNumber": 60,
         "columnNumber": 29,
         "functionName": null
       }
     ],
-    "notes": null
+    "notes": null,
+    "chromeContext": false
   },
   "type": "pageError",
   "from": "server1.conn0.child1/consoleActor2"
 });
 
 module.exports = {
   stubPreparedMessages,
   stubPackets,
--- a/devtools/client/webconsole/types.js
+++ b/devtools/client/webconsole/types.js
@@ -47,16 +47,17 @@ exports.ConsoleMessage = function(props)
     exceptionDocURL: null,
     executionPoint: undefined,
     userProvidedStyles: null,
     notes: null,
     indent: 0,
     prefix: "",
     private: false,
     logpointId: undefined,
+    chromeContext: false,
   }, props);
 };
 
 exports.NetworkEventMessage = function(props) {
   return Object.assign({
     id: null,
     actor: null,
     level: MESSAGE_LEVEL.LOG,
--- a/devtools/client/webconsole/utils/messages.js
+++ b/devtools/client/webconsole/utils/messages.js
@@ -190,16 +190,17 @@ function transformConsoleAPICallPacket(p
     stacktrace: message.stacktrace ? message.stacktrace : null,
     frame,
     timeStamp: message.timeStamp,
     userProvidedStyles: message.styles,
     prefix: message.prefix,
     private: message.private,
     executionPoint: message.executionPoint,
     logpointId: message.logpointId,
+    chromeContext: message.chromeContext,
   });
 }
 
 function transformNavigationMessagePacket(packet) {
   const { url } = packet;
   return new ConsoleMessage({
     source: MESSAGE_SOURCE.CONSOLE_API,
     type: MESSAGE_TYPE.NAVIGATION_MARKER,
@@ -217,16 +218,17 @@ function transformLogMessagePacket(packe
 
   return new ConsoleMessage({
     source: MESSAGE_SOURCE.CONSOLE_API,
     type: MESSAGE_TYPE.LOG,
     level: MESSAGE_LEVEL.LOG,
     messageText: message,
     timeStamp,
     private: message.private,
+    chromeContext: message.chromeContext,
   });
 }
 
 function transformPageErrorPacket(packet) {
   const { pageError } = packet;
   let level = MESSAGE_LEVEL.ERROR;
   if (pageError.warning || pageError.strict) {
     level = MESSAGE_LEVEL.WARN;
@@ -254,16 +256,17 @@ function transformPageErrorPacket(packet
     stacktrace: pageError.stacktrace ? pageError.stacktrace : null,
     frame,
     errorMessageName: pageError.errorMessageName,
     exceptionDocURL: pageError.exceptionDocURL,
     timeStamp: pageError.timeStamp,
     notes: pageError.notes,
     private: pageError.private,
     executionPoint: pageError.executionPoint,
+    chromeContext: pageError.chromeContext,
   });
 }
 
 function transformNetworkEventPacket(packet) {
   const { networkEvent } = packet;
 
   return new NetworkEventMessage({
     actor: networkEvent.actor,
@@ -274,16 +277,17 @@ function transformNetworkEventPacket(pac
     totalTime: networkEvent.totalTime,
     url: networkEvent.request.url,
     urlDetails: getUrlDetails(networkEvent.request.url),
     method: networkEvent.request.method,
     updates: networkEvent.updates,
     cause: networkEvent.cause,
     private: networkEvent.private,
     securityState: networkEvent.securityState,
+    chromeContext: networkEvent.chromeContext,
   });
 }
 
 function transformEvaluationResultPacket(packet) {
   let {
     exceptionMessage,
     errorMessageName,
     exceptionDocURL,
--- a/devtools/server/actors/webconsole.js
+++ b/devtools/server/actors/webconsole.js
@@ -1525,16 +1525,17 @@ WebConsoleActor.prototype =
       error: !!(pageError.flags & pageError.errorFlag),
       exception: !!(pageError.flags & pageError.exceptionFlag),
       strict: !!(pageError.flags & pageError.strictFlag),
       info: !!(pageError.flags & pageError.infoFlag),
       private: pageError.isFromPrivateWindow,
       stacktrace: stack,
       notes: notesArray,
       executionPoint: pageError.executionPoint,
+      chromeContext: pageError.isFromChromeContext,
     };
   },
 
   /**
    * Handler for window.console API calls received from the ConsoleAPIListener.
    * This method sends the object to the remote Web Console client.
    *
    * @see ConsoleAPIListener