Index: third_party/WebKit/Source/devtools/front_end/main/Main.js |
diff --git a/third_party/WebKit/Source/devtools/front_end/main/Main.js b/third_party/WebKit/Source/devtools/front_end/main/Main.js |
index 1e7cf982faf3dd2988611398b1b2afbc6c03bf68..bddafee38a9afece34dcdc045d3f2a3f18e13031 100644 |
--- a/third_party/WebKit/Source/devtools/front_end/main/Main.js |
+++ b/third_party/WebKit/Source/devtools/front_end/main/Main.js |
@@ -493,34 +493,18 @@ WebInspector.Main.prototype = { |
WebInspector.shortcutRegistry.handleShortcut(event); |
}, |
- _documentCanCopy: function(event) |
+ /** |
+ * @param {!Event} event |
+ */ |
+ _redispatchClipboardEvent: function(event) |
{ |
- var panel = WebInspector.inspectorView.currentPanel(); |
- if (panel && panel["handleCopyEvent"]) |
+ var eventCopy = new CustomEvent("clipboard-" + event.type); |
+ eventCopy["original"] = event; |
lushnikov
2016/07/12 03:21:55
Can we use CustomEvent.detail for this? https://de
pfeldman
2016/07/12 20:56:46
Did not work for me.
|
+ event.deepActiveElement().dispatchEvent(eventCopy); |
+ if (eventCopy.handled) |
lushnikov
2016/07/12 03:21:55
Can we check for eventCopy.defaultPrevented here?
pfeldman
2016/07/12 20:56:46
It does not work on custom events.
|
event.preventDefault(); |
}, |
- _documentCopy: function(event) |
- { |
- var panel = WebInspector.inspectorView.currentPanel(); |
- if (panel && panel["handleCopyEvent"]) |
- panel["handleCopyEvent"](event); |
- }, |
- |
- _documentCut: function(event) |
- { |
- var panel = WebInspector.inspectorView.currentPanel(); |
- if (panel && panel["handleCutEvent"]) |
- panel["handleCutEvent"](event); |
- }, |
- |
- _documentPaste: function(event) |
- { |
- var panel = WebInspector.inspectorView.currentPanel(); |
- if (panel && panel["handlePasteEvent"]) |
- panel["handlePasteEvent"](event); |
- }, |
- |
_contextMenuEventFired: function(event) |
{ |
if (event.handled || event.target.classList.contains("popup-glasspane")) |
@@ -533,10 +517,10 @@ WebInspector.Main.prototype = { |
_addMainEventListeners: function(document) |
{ |
document.addEventListener("keydown", this._postDocumentKeyDown.bind(this), false); |
- document.addEventListener("beforecopy", this._documentCanCopy.bind(this), true); |
- document.addEventListener("copy", this._documentCopy.bind(this), false); |
- document.addEventListener("cut", this._documentCut.bind(this), false); |
- document.addEventListener("paste", this._documentPaste.bind(this), false); |
+ document.addEventListener("beforecopy", this._redispatchClipboardEvent.bind(this), true); |
+ document.addEventListener("copy", this._redispatchClipboardEvent.bind(this), false); |
+ document.addEventListener("cut", this._redispatchClipboardEvent.bind(this), false); |
+ document.addEventListener("paste", this._redispatchClipboardEvent.bind(this), false); |
document.addEventListener("contextmenu", this._contextMenuEventFired.bind(this), true); |
document.addEventListener("click", this._documentClick.bind(this), false); |
}, |