Files
tubestation/browser/components/extensions/child/ext-menus-child.js
2018-08-08 18:06:41 +02:00

26 lines
729 B
JavaScript

"use strict";
this.menusChild = class extends ExtensionAPI {
getAPI(context) {
return {
menus: {
getTargetElement(targetElementId) {
let tabChildGlobal = context.messageManager;
let {contextMenu} = tabChildGlobal;
let element;
if (contextMenu) {
let {lastMenuTarget} = contextMenu;
if (lastMenuTarget && Math.floor(lastMenuTarget.timeStamp) === targetElementId) {
element = lastMenuTarget.targetRef.get();
}
}
if (element && element.getRootNode({composed: true}) === context.contentWindow.document) {
return element;
}
return null;
},
},
};
}
};