mirror of
https://github.com/GoogleChrome/chrome-extensions-samples.git
synced 2026-04-02 14:29:37 +07:00
* Remove docs folder. This was a redirect from a GitHub pages site that does not appear to be in use. * Rename api folder to api-samples. * Move examples to functional-samples folder. * Move cookbook sample to functional-samples. * Move tutorials to functional-samples folder. * Move mv2 and apps folders to _archive. * Rename tools folder to .repo. * Move reference folder to functional-samples. * Update README. Update README with new relative links for reorg. * Update README.md Co-authored-by: amysteamdev <37001393+AmySteam@users.noreply.github.com> --------- Co-authored-by: amysteamdev <37001393+AmySteam@users.noreply.github.com>
58 lines
1.8 KiB
JavaScript
58 lines
1.8 KiB
JavaScript
// Copyright (c) 2011 The Chromium Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
var attachedTabs = {};
|
|
var version = "1.0";
|
|
|
|
chrome.debugger.onEvent.addListener(onEvent);
|
|
chrome.debugger.onDetach.addListener(onDetach);
|
|
|
|
chrome.browserAction.onClicked.addListener(function(tab) {
|
|
var tabId = tab.id;
|
|
var debuggeeId = {tabId:tabId};
|
|
|
|
if (attachedTabs[tabId] == "pausing")
|
|
return;
|
|
|
|
if (!attachedTabs[tabId])
|
|
chrome.debugger.attach(debuggeeId, version, onAttach.bind(null, debuggeeId));
|
|
else if (attachedTabs[tabId])
|
|
chrome.debugger.detach(debuggeeId, onDetach.bind(null, debuggeeId));
|
|
});
|
|
|
|
function onAttach(debuggeeId) {
|
|
if (chrome.runtime.lastError) {
|
|
alert(chrome.runtime.lastError.message);
|
|
return;
|
|
}
|
|
|
|
var tabId = debuggeeId.tabId;
|
|
chrome.browserAction.setIcon({tabId: tabId, path:"debuggerPausing.png"});
|
|
chrome.browserAction.setTitle({tabId: tabId, title:"Pausing JavaScript"});
|
|
attachedTabs[tabId] = "pausing";
|
|
chrome.debugger.sendCommand(
|
|
debuggeeId, "Debugger.enable", {},
|
|
onDebuggerEnabled.bind(null, debuggeeId));
|
|
}
|
|
|
|
function onDebuggerEnabled(debuggeeId) {
|
|
chrome.debugger.sendCommand(debuggeeId, "Debugger.pause");
|
|
}
|
|
|
|
function onEvent(debuggeeId, method) {
|
|
var tabId = debuggeeId.tabId;
|
|
if (method == "Debugger.paused") {
|
|
attachedTabs[tabId] = "paused";
|
|
chrome.browserAction.setIcon({tabId:tabId, path:"debuggerContinue.png"});
|
|
chrome.browserAction.setTitle({tabId:tabId, title:"Resume JavaScript"});
|
|
}
|
|
}
|
|
|
|
function onDetach(debuggeeId) {
|
|
var tabId = debuggeeId.tabId;
|
|
delete attachedTabs[tabId];
|
|
chrome.browserAction.setIcon({tabId:tabId, path:"debuggerPause.png"});
|
|
chrome.browserAction.setTitle({tabId:tabId, title:"Pause JavaScript"});
|
|
}
|