context menu refactoring

This commit is contained in:
zadam
2019-05-03 20:27:38 +02:00
parent 3e22804a76
commit c7b5784123
6 changed files with 234 additions and 232 deletions

View File

@@ -2,7 +2,7 @@ const $contextMenuContainer = $("#context-menu-container");
let dateContextMenuOpenedMs = 0;
function initContextMenu(event, contextMenuItems, selectContextMenuItem) {
async function initContextMenu(event, contextMenu) {
event.stopPropagation();
$contextMenuContainer.empty();
@@ -34,7 +34,7 @@ function initContextMenu(event, contextMenuItems, selectContextMenuItem) {
e.originalTarget = event.target;
selectContextMenuItem(e, cmd);
contextMenu.selectContextMenuItem(e, cmd);
// it's important to stop the propagation especially for sub-menus, otherwise the event
// might be handled again by top-level menu
@@ -61,7 +61,7 @@ function initContextMenu(event, contextMenuItems, selectContextMenuItem) {
}
}
addItems($contextMenuContainer, contextMenuItems);
addItems($contextMenuContainer, await contextMenu.getContextMenuItems());
// code below tries to detect when dropdown would overflow from page
// in such case we'll position it above click coordinates so it will fit into client