mirror of
				https://github.com/zadam/trilium.git
				synced 2025-10-31 02:16:05 +01:00 
			
		
		
		
	use bootstrap modal to confirm note deletion which fixes #582
This commit is contained in:
		| @@ -7,8 +7,11 @@ const $custom = $("#confirm-dialog-custom"); | |||||||
| const DELETE_NOTE_BUTTON_ID = "confirm-dialog-delete-note"; | const DELETE_NOTE_BUTTON_ID = "confirm-dialog-delete-note"; | ||||||
|  |  | ||||||
| let resolve; | let resolve; | ||||||
|  | let $originallyFocused; // element focused before the dialog was opened so we can return to it afterwards | ||||||
|  |  | ||||||
| function confirm(message) { | function confirm(message) { | ||||||
|  |     $originallyFocused = $(':focus'); | ||||||
|  |  | ||||||
|     $custom.hide(); |     $custom.hide(); | ||||||
|  |  | ||||||
|     glob.activeDialog = $dialog; |     glob.activeDialog = $dialog; | ||||||
| @@ -55,6 +58,11 @@ $dialog.on("hidden.bs.modal", () => { | |||||||
|     if (resolve) { |     if (resolve) { | ||||||
|         resolve(false); |         resolve(false); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  |     if ($originallyFocused) { | ||||||
|  |         $originallyFocused.focus(); | ||||||
|  |         $originallyFocused = null; | ||||||
|  |     } | ||||||
| }); | }); | ||||||
|  |  | ||||||
| function doResolve(ret) { | function doResolve(ret) { | ||||||
|   | |||||||
| @@ -5,8 +5,11 @@ const $infoContent = $("#info-dialog-content"); | |||||||
| const $okButton = $("#info-dialog-ok-button"); | const $okButton = $("#info-dialog-ok-button"); | ||||||
|  |  | ||||||
| let resolve; | let resolve; | ||||||
|  | let $originallyFocused; // element focused before the dialog was opened so we can return to it afterwards | ||||||
|  |  | ||||||
| function info(message) { | function info(message) { | ||||||
|  |     $originallyFocused = $(':focus'); | ||||||
|  |  | ||||||
|     utils.closeActiveDialog(); |     utils.closeActiveDialog(); | ||||||
|  |  | ||||||
|     glob.activeDialog = $dialog; |     glob.activeDialog = $dialog; | ||||||
| @@ -24,6 +27,11 @@ $dialog.on("hidden.bs.modal", () => { | |||||||
|     if (resolve) { |     if (resolve) { | ||||||
|         resolve(); |         resolve(); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|  |     if ($originallyFocused) { | ||||||
|  |         $originallyFocused.focus(); | ||||||
|  |         $originallyFocused = null; | ||||||
|  |     } | ||||||
| }); | }); | ||||||
|  |  | ||||||
| $okButton.click(() => $dialog.modal("hide")); | $okButton.click(() => $dialog.modal("hide")); | ||||||
|   | |||||||
| @@ -6,6 +6,7 @@ import treeCache from "./tree_cache.js"; | |||||||
| import treeUtils from "./tree_utils.js"; | import treeUtils from "./tree_utils.js"; | ||||||
| import hoistedNoteService from "./hoisted_note.js"; | import hoistedNoteService from "./hoisted_note.js"; | ||||||
| import noteDetailService from "./note_detail.js"; | import noteDetailService from "./note_detail.js"; | ||||||
|  | import confirmDialog from "../dialogs/confirm.js"; | ||||||
|  |  | ||||||
| async function moveBeforeNode(nodesToMove, beforeNode) { | async function moveBeforeNode(nodesToMove, beforeNode) { | ||||||
|     nodesToMove = await filterRootNote(nodesToMove); |     nodesToMove = await filterRootNote(nodesToMove); | ||||||
| @@ -82,7 +83,7 @@ async function moveToNode(nodesToMove, toNode) { | |||||||
| async function deleteNodes(nodes) { | async function deleteNodes(nodes) { | ||||||
|     nodes = await filterRootNote(nodes); |     nodes = await filterRootNote(nodes); | ||||||
|  |  | ||||||
|     if (nodes.length === 0 || !confirm('Are you sure you want to delete select note(s) and all the sub-notes?')) { |     if (nodes.length === 0 || !await confirmDialog.confirm('Are you sure you want to delete select note(s) and all the sub-notes?')) { | ||||||
|         return false; |         return false; | ||||||
|     } |     } | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user