Ceci a été expliqué comme indiqué dans le rapport Problème de Chrome 747888 :
Donc, tout d'abord, setOpenResourceHandle()
est destiné aux cas où les utilisateurs cliquent sur un lien (par exemple, un lien vers un site Web). linkified
location in console) qui résulte normalement de l'ouverture d'un onglet source dans DevTools, il n'est pas destiné à être déclenché lorsqu'un fichier est explicitement ouvert dans le panneau source. Pour les changements de fichier/position dans l'onglet des sources, nous avons chrome.devtools.panels.sources.onSelectionChanged
(voir un test d'implantation par exemple l'utilisation) qui a récemment été ramené par @jacobr ).
Voici l'exemple de code mentionné :
function extension_testElementsOnSelectionChanged(nextTest)
{
function onSelectionChanged()
{
webInspector.panels.elements.onSelectionChanged.removeListener(onSelectionChanged);
output("onSelectionChanged fired");
nextTest();
}
webInspector.panels.elements.onSelectionChanged.addListener(onSelectionChanged);
webInspector.inspectedWindow.eval("inspect(document.body.children[0]), 0");
}
function extension_testSourcesOnSelectionChangedShowFile(nextTest)
{
function onSelectionChanged(selectionInfo)
{
webInspector.panels.sources.onSelectionChanged.removeListener(onSelectionChanged);
output("sources onSelectionChanged fired, selectionInfo:");
dumpObject(selectionInfo, {url: "url"});
nextTest();
}
webInspector.panels.sources.onSelectionChanged.addListener(onSelectionChanged);
evaluateOnFrontend("InspectorTest.showScriptSource(\"test-script.js\")");
}
function extension_testSourcesOnSelectionChangedShowFileAndLine(nextTest)
{
webInspector.inspectedWindow.eval("location.href", function(inspectedPageURL) {
function onSelectionChanged(selectionInfo)
{
webInspector.panels.sources.onSelectionChanged.removeListener(onSelectionChanged);
output("sources onSelectionChanged fired, selectionInfo:");
dumpObject(selectionInfo, {url: "url"});
nextTest();
}
webInspector.panels.sources.onSelectionChanged.addListener(onSelectionChanged);
var basePath = inspectedPageURL.replace(/\/[^/]*$/, "/");
webInspector.panels.openResource(basePath + "resources/test-script.js", 2);
});
}