mirror of
https://github.com/zadam/trilium.git
synced 2025-06-06 18:08:33 +02:00
right context menu on note map
This commit is contained in:
parent
3d9260c974
commit
fdb7b7721d
Binary file not shown.
@ -1,5 +1,5 @@
|
|||||||
import treeService from './tree.js';
|
import treeService from './tree.js';
|
||||||
import contextMenu from "./context_menu.js";
|
import linkContextMenuService from "./link_context_menu.js";
|
||||||
import appContext from "./app_context.js";
|
import appContext from "./app_context.js";
|
||||||
import froca from "./froca.js";
|
import froca from "./froca.js";
|
||||||
import utils from "./utils.js";
|
import utils from "./utils.js";
|
||||||
@ -128,29 +128,7 @@ function linkContextMenu(e) {
|
|||||||
|
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
|
||||||
contextMenu.show({
|
linkContextMenuService.openContextMenu(notePath, e);
|
||||||
x: e.pageX,
|
|
||||||
y: e.pageY,
|
|
||||||
items: [
|
|
||||||
{title: "Open note in a new tab", command: "openNoteInNewTab", uiIcon: "empty"},
|
|
||||||
{title: "Open note in a new split", command: "openNoteInNewSplit", uiIcon: "dock-right"},
|
|
||||||
{title: "Open note in a new window", command: "openNoteInNewWindow", uiIcon: "window-open"}
|
|
||||||
],
|
|
||||||
selectMenuItemHandler: ({command}) => {
|
|
||||||
if (command === 'openNoteInNewTab') {
|
|
||||||
appContext.tabManager.openTabWithNoteWithHoisting(notePath);
|
|
||||||
}
|
|
||||||
else if (command === 'openNoteInNewSplit') {
|
|
||||||
const subContexts = appContext.tabManager.getActiveContext().getSubContexts();
|
|
||||||
const {ntxId} = subContexts[subContexts.length - 1];
|
|
||||||
|
|
||||||
appContext.triggerCommand("openNewNoteSplit", {ntxId, notePath});
|
|
||||||
}
|
|
||||||
else if (command === 'openNoteInNewWindow') {
|
|
||||||
appContext.triggerCommand('openInWindow', {notePath, hoistedNoteId: 'root'});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async function loadReferenceLinkTitle(noteId, $el) {
|
async function loadReferenceLinkTitle(noteId, $el) {
|
||||||
|
32
src/public/app/services/link_context_menu.js
Normal file
32
src/public/app/services/link_context_menu.js
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
import contextMenu from "./context_menu.js";
|
||||||
|
import appContext from "./app_context.js";
|
||||||
|
|
||||||
|
function openContextMenu(notePath, e) {
|
||||||
|
contextMenu.show({
|
||||||
|
x: e.pageX,
|
||||||
|
y: e.pageY,
|
||||||
|
items: [
|
||||||
|
{title: "Open note in a new tab", command: "openNoteInNewTab", uiIcon: "empty"},
|
||||||
|
{title: "Open note in a new split", command: "openNoteInNewSplit", uiIcon: "dock-right"},
|
||||||
|
{title: "Open note in a new window", command: "openNoteInNewWindow", uiIcon: "window-open"}
|
||||||
|
],
|
||||||
|
selectMenuItemHandler: ({command}) => {
|
||||||
|
if (command === 'openNoteInNewTab') {
|
||||||
|
appContext.tabManager.openTabWithNoteWithHoisting(notePath);
|
||||||
|
}
|
||||||
|
else if (command === 'openNoteInNewSplit') {
|
||||||
|
const subContexts = appContext.tabManager.getActiveContext().getSubContexts();
|
||||||
|
const {ntxId} = subContexts[subContexts.length - 1];
|
||||||
|
|
||||||
|
appContext.triggerCommand("openNewNoteSplit", {ntxId, notePath});
|
||||||
|
}
|
||||||
|
else if (command === 'openNoteInNewWindow') {
|
||||||
|
appContext.triggerCommand('openInWindow', {notePath, hoistedNoteId: 'root'});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export default {
|
||||||
|
openContextMenu
|
||||||
|
}
|
@ -4,6 +4,7 @@ import attributeService from "../services/attributes.js";
|
|||||||
import hoistedNoteService from "../services/hoisted_note.js";
|
import hoistedNoteService from "../services/hoisted_note.js";
|
||||||
import appContext from "../services/app_context.js";
|
import appContext from "../services/app_context.js";
|
||||||
import NoteContextAwareWidget from "./note_context_aware_widget.js";
|
import NoteContextAwareWidget from "./note_context_aware_widget.js";
|
||||||
|
import linkContextMenuService from "../services/link_context_menu.js";
|
||||||
|
|
||||||
const TPL = `<div class="note-map-widget" style="position: relative;">
|
const TPL = `<div class="note-map-widget" style="position: relative;">
|
||||||
<style>
|
<style>
|
||||||
@ -106,7 +107,8 @@ export default class NoteMapWidget extends NoteContextAwareWidget {
|
|||||||
.linkDirectionalArrowRelPos(1)
|
.linkDirectionalArrowRelPos(1)
|
||||||
.linkWidth(1)
|
.linkWidth(1)
|
||||||
.linkColor(() => this.css.mutedTextColor)
|
.linkColor(() => this.css.mutedTextColor)
|
||||||
.onNodeClick(node => appContext.tabManager.getActiveContext().setNote(node.id));
|
.onNodeClick(node => appContext.tabManager.getActiveContext().setNote(node.id))
|
||||||
|
.onNodeRightClick((node, e) => linkContextMenuService.openContextMenu(node.id, e));
|
||||||
|
|
||||||
if (this.mapType === 'link') {
|
if (this.mapType === 'link') {
|
||||||
this.graph
|
this.graph
|
||||||
|
Loading…
x
Reference in New Issue
Block a user