mirror of
https://github.com/zadam/trilium.git
synced 2025-03-01 14:22:32 +01:00
better handling of renames in recent notes list (but hacky and not perfect)
This commit is contained in:
parent
bf22cc55e1
commit
001d91172a
@ -26,12 +26,18 @@ $(document).bind('keydown', 'alt+q', function() {
|
||||
recentNotesSelectBox.find('option').remove();
|
||||
|
||||
// remove the current note
|
||||
let recNotes = recentNotes.filter(note => note.noteId !== globalNote.detail.note_id);
|
||||
let recNotes = recentNotes.filter(note => note !== globalNote.detail.note_id);
|
||||
|
||||
$.each(recNotes, function(key, valueNoteId) {
|
||||
let noteTitle = globalNoteNames[valueNoteId];
|
||||
|
||||
if (!noteTitle) {
|
||||
return;
|
||||
}
|
||||
|
||||
$.each(recNotes, function(key, value) {
|
||||
let option = $("<option></option>")
|
||||
.attr("value", value.noteId)
|
||||
.text(value.noteTitle);
|
||||
.attr("value", valueNoteId)
|
||||
.text(noteTitle);
|
||||
|
||||
// select the first one (most recent one) by default
|
||||
if (key === 0) {
|
||||
|
@ -42,6 +42,8 @@ function saveNoteIfChanged(callback) {
|
||||
|
||||
note.detail.note_title = title;
|
||||
|
||||
globalNoteNames[note.detail.note_id] = title;
|
||||
|
||||
$.ajax({
|
||||
url: baseUrl + 'notes/' + note.detail.note_id,
|
||||
type: 'PUT',
|
||||
@ -123,6 +125,8 @@ function createNote(node, parentKey, target) {
|
||||
"note_id": result.note_id
|
||||
};
|
||||
|
||||
globalNoteNames[result.note_id] = newNoteName;
|
||||
|
||||
newNoteCreated = true;
|
||||
|
||||
if (target === 'after') {
|
||||
@ -164,27 +168,24 @@ function loadNote(noteId) {
|
||||
|
||||
$(window).resize(); // to trigger resizing of editor
|
||||
|
||||
addRecentNote(noteId, note.detail.note_id, note.detail.note_title);
|
||||
addRecentNote(noteId, note.detail.note_id);
|
||||
|
||||
noteChangeDisabled = false;
|
||||
});
|
||||
}
|
||||
|
||||
function addRecentNote(noteTreeId, noteContentId, noteTitle) {
|
||||
function addRecentNote(noteTreeId, noteContentId) {
|
||||
const origDate = new Date();
|
||||
|
||||
setTimeout(function() {
|
||||
// we include the note into recent list only if the user stayed on the note at least 5 seconds
|
||||
if (noteTreeId === globalNote.detail.note_id || noteContentId === globalNote.detail.note_id) {
|
||||
// if it's already there, remove the note
|
||||
recentNotes = recentNotes.filter(note => note.noteId !== noteTreeId);
|
||||
recentNotes = recentNotes.filter(note => note !== noteTreeId);
|
||||
|
||||
console.log("added after " + (new Date().getTime() - origDate.getTime()));
|
||||
|
||||
recentNotes.unshift({
|
||||
noteId: noteTreeId,
|
||||
noteTitle: noteTitle
|
||||
});
|
||||
recentNotes.unshift(noteTreeId);
|
||||
}
|
||||
}, 1500);
|
||||
}
|
||||
|
@ -18,6 +18,11 @@ const keybindings = {
|
||||
node.getParent().renderTitle();
|
||||
}
|
||||
|
||||
delete globalNoteNames[node.key];
|
||||
|
||||
// remove from recent notes
|
||||
recentNotes = recentNotes.filter(note => note !== node.key);
|
||||
|
||||
node.remove();
|
||||
}
|
||||
});
|
||||
@ -89,6 +94,7 @@ const keybindings = {
|
||||
}
|
||||
};
|
||||
|
||||
const globalNoteNames = {};
|
||||
|
||||
$(function(){
|
||||
$.get(baseUrl + 'tree').then(resp => {
|
||||
@ -101,6 +107,8 @@ $(function(){
|
||||
|
||||
function copyTitle(notes) {
|
||||
for (let note of notes) {
|
||||
globalNoteNames[note.note_id] = note.note_title;
|
||||
|
||||
note.title = note.note_title;
|
||||
|
||||
if (note.is_clone) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user