diff options
author | Daniel Narvaez <dwnarvaez@gmail.com> | 2013-02-06 13:49:14 (GMT) |
---|---|---|
committer | Daniel Narvaez <dwnarvaez@gmail.com> | 2013-02-06 13:49:14 (GMT) |
commit | 821413607a0718156f9d25d895e89b1c3d37aa8b (patch) | |
tree | 01c285af734ed5bba64b73b489e1e0226a94a262 /apps/system/js/remote_debugger.js | |
parent | c110fb485b3af0066c6df7aeac8c055e9d767efa (diff) |
Copy various bits from gaia
Diffstat (limited to 'apps/system/js/remote_debugger.js')
-rw-r--r-- | apps/system/js/remote_debugger.js | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/apps/system/js/remote_debugger.js b/apps/system/js/remote_debugger.js new file mode 100644 index 0000000..51544bb --- /dev/null +++ b/apps/system/js/remote_debugger.js @@ -0,0 +1,41 @@ +/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- / +/* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab: */ + +'use strict'; + +var RemoteDebugger = (function() { + + return { + init: function() { + window.addEventListener('mozChromeEvent', this); + }, + + handleEvent: function onMozChromeEvent(e) { + if (e.detail.type !== 'remote-debugger-prompt') { + return; + } + + // Reusing the ModalDialog infrastructure. + ModalDialog.showWithPseudoEvent({ + text: navigator.mozL10n.get('remoteDebuggerMessage'), + type: 'confirm', + callback: function() { + RemoteDebugger._dispatchEvent(true); + }, + cancel: function() { + RemoteDebugger._dispatchEvent(false); + } + }); + }, + + _dispatchEvent: function su_dispatchEvent(value) { + var event = document.createEvent('CustomEvent'); + event.initCustomEvent('mozContentEvent', true, true, + { type: 'remote-debugger-prompt', + value: value }); + window.dispatchEvent(event); + } + }; +})(); + +RemoteDebugger.init(); |