From 61c04766bb4f37e9bf0f6741b77978cb045bd9aa Mon Sep 17 00:00:00 2001 From: Gamosoft Date: Thu, 27 Nov 2025 11:17:06 +0100 Subject: [PATCH 1/3] create from all places --- frontend/app.js | 8 ++++---- frontend/index.html | 24 ++++++++++++------------ 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/frontend/app.js b/frontend/app.js index 9ed5e39..e4136ed 100644 --- a/frontend/app.js +++ b/frontend/app.js @@ -2006,8 +2006,8 @@ function noteApp() { // ===================================================== async createNote(folderPath = null) { - // Use provided folder path, or dropdown target folder context - const targetFolder = folderPath !== null ? folderPath : this.dropdownTargetFolder; + // Use provided folder path, or dropdown target folder context, or homepage folder + const targetFolder = folderPath !== null ? folderPath : (this.dropdownTargetFolder || this.selectedHomepageFolder); this.closeDropdown(); const promptText = targetFolder @@ -2059,8 +2059,8 @@ function noteApp() { }, async createFolder(parentPath = null) { - // Use provided parent path, or dropdown target folder context - const targetFolder = parentPath !== null ? parentPath : this.dropdownTargetFolder; + // Use provided parent path, or dropdown target folder context, or homepage folder + const targetFolder = parentPath !== null ? parentPath : (this.dropdownTargetFolder || this.selectedHomepageFolder); this.closeDropdown(); const promptText = targetFolder diff --git a/frontend/index.html b/frontend/index.html index 9d89623..bd7aae5 100644 --- a/frontend/index.html +++ b/frontend/index.html @@ -1129,19 +1129,19 @@ @@ -1196,13 +1196,13 @@ @@ -1214,16 +1214,16 @@ -

No notes yet

-

Create your first note to get started

+

+

From c8bac63cfb93e882d6011d638b67189f8a59b2ca Mon Sep 17 00:00:00 2001 From: Gamosoft Date: Thu, 27 Nov 2025 11:30:49 +0100 Subject: [PATCH 2/3] deleting items from card view --- frontend/app.js | 9 +++++++++ frontend/index.html | 40 ++++++++++++++++++++++++++++++++++------ 2 files changed, 43 insertions(+), 6 deletions(-) diff --git a/frontend/app.js b/frontend/app.js index e4136ed..16c0fe7 100644 --- a/frontend/app.js +++ b/frontend/app.js @@ -2098,6 +2098,9 @@ function noteApp() { } this.expandedFolders.add(folderPath); await this.loadNotes(); + + // Navigate to the newly created folder on the homepage + this.goToHomepageFolder(folderPath); } else { ErrorHandler.handle('create folder', new Error('Server returned error')); } @@ -3397,6 +3400,12 @@ function noteApp() { goToHomepageFolder(folderPath) { this.selectedHomepageFolder = folderPath || ''; + // Clear editor state to show landing page + this.currentNote = ''; + this.currentNoteName = ''; + this.noteContent = ''; + this.currentImage = ''; + // Invalidate cache to force recalculation this._homepageCache = { folderPath: null, diff --git a/frontend/index.html b/frontend/index.html index bd7aae5..bf35062 100644 --- a/frontend/index.html +++ b/frontend/index.html @@ -1236,10 +1236,24 @@
+ + +
@@ -1263,10 +1277,24 @@
+ + +

From e0b04263001623e828e21ec8149f20b73f5da4d9 Mon Sep 17 00:00:00 2001 From: Gamosoft Date: Thu, 27 Nov 2025 14:13:39 +0100 Subject: [PATCH 3/3] adding from main NEW button on left pane always creates at root --- frontend/app.js | 37 ++++++++++++++++++++++++++++++------- 1 file changed, 30 insertions(+), 7 deletions(-) diff --git a/frontend/app.js b/frontend/app.js index 16c0fe7..2aa75da 100644 --- a/frontend/app.js +++ b/frontend/app.js @@ -99,7 +99,7 @@ function noteApp() { // Dropdown state showNewDropdown: false, - dropdownTargetFolder: '', // Folder context for "New" dropdown (empty = root) + dropdownTargetFolder: null, // Folder context for "New" dropdown ('' = root, null = not set) dropdownPosition: { top: 0, left: 0 }, // Position for contextual dropdown // Template state @@ -628,9 +628,16 @@ function noteApp() { notePath += '.md'; } - // If we have a target folder context, create in that folder - if (this.dropdownTargetFolder || this.selectedHomepageFolder) { - const targetFolder = this.dropdownTargetFolder || this.selectedHomepageFolder; + // Determine target folder: use dropdown context if set, otherwise homepage folder + let targetFolder; + if (this.dropdownTargetFolder !== null && this.dropdownTargetFolder !== undefined) { + targetFolder = this.dropdownTargetFolder; // Can be '' for root or a folder path + } else { + targetFolder = this.selectedHomepageFolder || ''; + } + + // If we have a target folder, create note in that folder + if (targetFolder) { notePath = `${targetFolder}/${notePath}`; } @@ -1998,7 +2005,7 @@ function noteApp() { closeDropdown() { this.showNewDropdown = false; - this.dropdownTargetFolder = ''; // Reset folder context + this.dropdownTargetFolder = null; // Reset folder context }, // ===================================================== @@ -2007,7 +2014,15 @@ function noteApp() { async createNote(folderPath = null) { // Use provided folder path, or dropdown target folder context, or homepage folder - const targetFolder = folderPath !== null ? folderPath : (this.dropdownTargetFolder || this.selectedHomepageFolder); + // Note: Check dropdownTargetFolder !== null to distinguish between '' (root) and not set + let targetFolder; + if (folderPath !== null) { + targetFolder = folderPath; + } else if (this.dropdownTargetFolder !== null && this.dropdownTargetFolder !== undefined) { + targetFolder = this.dropdownTargetFolder; // Can be '' for root or a folder path + } else { + targetFolder = this.selectedHomepageFolder || ''; + } this.closeDropdown(); const promptText = targetFolder @@ -2060,7 +2075,15 @@ function noteApp() { async createFolder(parentPath = null) { // Use provided parent path, or dropdown target folder context, or homepage folder - const targetFolder = parentPath !== null ? parentPath : (this.dropdownTargetFolder || this.selectedHomepageFolder); + // Note: Check dropdownTargetFolder !== null to distinguish between '' (root) and not set + let targetFolder; + if (parentPath !== null) { + targetFolder = parentPath; + } else if (this.dropdownTargetFolder !== null && this.dropdownTargetFolder !== undefined) { + targetFolder = this.dropdownTargetFolder; // Can be '' for root or a folder path + } else { + targetFolder = this.selectedHomepageFolder || ''; + } this.closeDropdown(); const promptText = targetFolder