mirror of
				https://github.com/TriliumNext/Notes.git
				synced 2025-10-31 13:01:31 +08:00 
			
		
		
		
	Merge pull request #585 from TriliumNext/sirius_patch_2
Triggers full text search when Ctrl + Enter is pressed in note_autocomplete.
This commit is contained in:
		
						commit
						cdf8490651
					
				| @ -45,6 +45,16 @@ async function autocompleteSource(term, cb, options = {}) { | |||||||
|         ].concat(results); |         ].concat(results); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     if (term.trim().length >= 1 && options.allowSearchNotes) { | ||||||
|  |         results = results.concat([ | ||||||
|  |             { | ||||||
|  |                 action: 'search-notes', | ||||||
|  |                 noteTitle: term, | ||||||
|  |                 highlightedNotePathTitle: `Search for "${utils.escapeHtml(term)}" <kbd style='color: var(--muted-text-color); background-color: transparent; float: right;'>Ctrl+Enter</kbd>` | ||||||
|  |             } | ||||||
|  |         ]); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     if (term.match(/^[a-z]+:\/\/.+/i) && options.allowExternalLinks) { |     if (term.match(/^[a-z]+:\/\/.+/i) && options.allowExternalLinks) { | ||||||
|         results = [ |         results = [ | ||||||
|             { |             { | ||||||
| @ -138,6 +148,17 @@ function initNoteAutocomplete($el, options) { | |||||||
|         autocompleteOptions.debug = true;   // don't close on blur
 |         autocompleteOptions.debug = true;   // don't close on blur
 | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     if (options.allowSearchNotes) { | ||||||
|  |         $el.on('keydown', (event) => { | ||||||
|  |             if (event.ctrlKey && event.key === 'Enter') { | ||||||
|  |                 // Prevent Ctrl + Enter from triggering autoComplete.
 | ||||||
|  |                 event.stopImmediatePropagation(); | ||||||
|  |                 event.preventDefault(); | ||||||
|  |                 $el.trigger('autocomplete:selected', { action: 'search-notes', noteTitle: $el.autocomplete("val")}); | ||||||
|  |             } | ||||||
|  |         }); | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     $el.autocomplete({ |     $el.autocomplete({ | ||||||
|         ...autocompleteOptions, |         ...autocompleteOptions, | ||||||
|         appendTo: document.querySelector('body'), |         appendTo: document.querySelector('body'), | ||||||
| @ -192,6 +213,12 @@ function initNoteAutocomplete($el, options) { | |||||||
|             suggestion.notePath = note.getBestNotePathString(hoistedNoteId); |             suggestion.notePath = note.getBestNotePathString(hoistedNoteId); | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|  |         if (suggestion.action === 'search-notes') { | ||||||
|  |             const searchString = suggestion.noteTitle; | ||||||
|  |             appContext.triggerCommand('searchNotes', { searchString }); | ||||||
|  |             return; | ||||||
|  |         } | ||||||
|  |          | ||||||
|         $el.setSelectedNotePath(suggestion.notePath); |         $el.setSelectedNotePath(suggestion.notePath); | ||||||
|         $el.setSelectedExternalLink(null); |         $el.setSelectedExternalLink(null); | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -58,6 +58,7 @@ export default class JumpToNoteDialog extends BasicWidget { | |||||||
|         noteAutocompleteService.initNoteAutocomplete(this.$autoComplete, { |         noteAutocompleteService.initNoteAutocomplete(this.$autoComplete, { | ||||||
|             allowCreatingNotes: true, |             allowCreatingNotes: true, | ||||||
|             hideGoToSelectedNoteButton: true, |             hideGoToSelectedNoteButton: true, | ||||||
|  |             allowSearchNotes: true, | ||||||
|             container: this.$results |             container: this.$results | ||||||
|         }) |         }) | ||||||
|             // clear any event listener added in previous invocation of this function
 |             // clear any event listener added in previous invocation of this function
 | ||||||
|  | |||||||
| @ -70,6 +70,7 @@ export default class EmptyTypeWidget extends TypeWidget { | |||||||
|         noteAutocompleteService.initNoteAutocomplete(this.$autoComplete, { |         noteAutocompleteService.initNoteAutocomplete(this.$autoComplete, { | ||||||
|             hideGoToSelectedNoteButton: true, |             hideGoToSelectedNoteButton: true, | ||||||
|             allowCreatingNotes: true, |             allowCreatingNotes: true, | ||||||
|  |             allowSearchNotes: true, | ||||||
|             container: this.$results |             container: this.$results | ||||||
|         }) |         }) | ||||||
|             .on('autocomplete:noteselected', function(event, suggestion, dataset) { |             .on('autocomplete:noteselected', function(event, suggestion, dataset) { | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Elian Doran
						Elian Doran