Remove the hard-coded blocking of searching in third-party scripts.
We are later going to add a feature to allow the users filter out these files themselves
Differential Revision: https://phabricator.services.mozilla.com/D168261
We used to get the mappings array from the pretty fast worker to the prettyPrint
action, and then pass this array to the sourceMap service (also a worker).
As the mapping can be quite large, and given it has a complex shape, passing it
to and from workers (via `postMessage`) was costly.
So here, instead of passing only the mapping, we directly generate the sourceMap
from the pretty fast worker, and pass it to the action which forwards it to
the sourceMap service.
This helps reduce the overhead we were seeing when not buffering the lines in
the pretty print worker, in the previous patch of this stack.
Differential Revision: https://phabricator.services.mozilla.com/D168384
Also stop modifying source actor objects by putting breakable lines on it.
Ideally source actors should be immutable object. There is only sourceMapURL left.
And clarified the fact that we are having source actor IDs everywhere and never a Source ID.
Differential Revision: https://phabricator.services.mozilla.com/D168661
Also stop modifying source actor objects by putting breakable lines on it.
Ideally source actors should be immutable object. There is only sourceMapURL left.
And clarified the fact that we are having source actor IDs everywhere and never a Source ID.
Differential Revision: https://phabricator.services.mozilla.com/D168661
Most usage is a straight replacement but gtk needs extra changes as it transfers plain text in UTF8 natively and needs to be converted into UTF16, and Windows uses single-byte characters for RTF and CF_HTML formats so we preserve this.
Differential Revision: https://phabricator.services.mozilla.com/D158587
This patch displays a source id for sources without urls in the project search results.
This source id matches that shown for the source tab.
Differential Revision: https://phabricator.services.mozilla.com/D168246
Found a bug where we just showing `SOURCE` in the tab for sources without urls,
instead of the actual source ids. e.g `SOURCE` instead of `SOURCEsource39`
This patch fixes the issue to show
- The source id ie. `(source39)`
- No need for the duplicate `SOURCE`
Differential Revision: https://phabricator.services.mozilla.com/D168245
- Trying to move all the jest tests for project-search to mochitests
- Renaming browser_dbg-search-project.js to browser_dbg-project-search.js for consistency.
- Keeping project-search.spec.js for now, will figure out how to move to xpcshell in abit.
Differential Revision: https://phabricator.services.mozilla.com/D167786
XPCNativeWrapper may be going away (bug 1481337). Stop defining it in the main environments and only define it
where necessary to discourage more uses.
This also helps to clarify the ESLint test environment globals.
Differential Revision: https://phabricator.services.mozilla.com/D168211
This removes the devtools.target-switching.server.enabled preference,
which was only having an impact on tab debugging.
Toolboxes other than tabs aren't yet using "server side target switching",
which will probably happen once we enable EFT in these and
we would probably not use a preference for enabling this.
This remove all assertions in tests covering client side target switching.
And it removed a couple of tests that became irrelevant.
Differential Revision: https://phabricator.services.mozilla.com/D166921
The debugger and the thread actor don't support window-global target actor's iframe switching.
So disable this entirely in the frontend.
This feature only applies to webextension and browser toolbox
which are the only one supporting more than one target and still
not EFT-compliant.
Once they become compliant we might be able to work on the frontend
to support client side target selection and filtering the SourceTree
for the currently selected target.
Differential Revision: https://phabricator.services.mozilla.com/D167268
But keep unwrapping sources for DOM event handlers like:
<div onclick="foo()" />
Whose source should be:
foo()
and not:
function onclick() { foo() }
Differential Revision: https://phabricator.services.mozilla.com/D165721
This makes the console behave like the other React panels.
We can also get rid of the specific bits for mocha in devtools-node-test-runner.js
Differential Revision: https://phabricator.services.mozilla.com/D167233
Note that there is still one leftover usage of sessionId related to performance markers,
which isn't related to telemetry... but a way to distinguish toolbox instances.
Differential Revision: https://phabricator.services.mozilla.com/D165936
We were using `mask-image` as a way to make the icon the color
we wanted, but we can use `-moz-context-properties` for that instead.
Not using `mask-image` removes the glitchy thin border that was visible (see Bug 1787010).
Differential Revision: https://phabricator.services.mozilla.com/D165788
This will help know which particular layer in source map stack we are using.
We could be using:
1) The source-map library from devtools/client/shared/vendor/source-map/
Which parse and query the JSON representation of source maps.
2) The SourceMapLoader layer on top of the lib from devtools/client/shared/source-map-loader/
Which helps load the lib within a worker and also handle all network requests to load
the remote source map and original files.
3) The SourceMapURLService exposed via the Toolbox from devtools/client/framework/source-map-url-service.js
Which helps glue Source and StyleSheet "devtools resources" (i.e. ResourceCommand resources) to original sources and stylesheets.
I also removed sourceMapsEnabled from reducer as this isn't used.
We always read the pref.
And removed a few of sourceMaps/client leftover symbols.
Differential Revision: https://phabricator.services.mozilla.com/D165137
The debugger was involving two distinct instances of parser worker.
One instance managed by the debugger "parserWorker" and another one
managed by the toolbox and also used by the console "evaluationsParser".
By reusing a shared instance we will increase the chance of parsing
files only once, simplify overall comprehension of the various workers
involved and may be speed up toolbox opening.
Differential Revision: https://phabricator.services.mozilla.com/D165136
The Browser Toolbox should be handy enough now with parent versus multiprocess modes
to debug the content process. The context selector in the right of the console evaluation
of the browser console and toolbox allow to select the content processes.
The thread selector in the debugger also allow to distinguish content processes.
Differential Revision: https://phabricator.services.mozilla.com/D164704