Fix suggesters

This commit is contained in:
Lost Paul 2024-09-07 15:22:39 +02:00
parent 9adb664682
commit 19ee5cde68
4 changed files with 8 additions and 5 deletions

View file

@ -11,7 +11,7 @@ export enum FileSuggestMode {
export class FileSuggest extends TextInputSuggest<TFile> {
constructor(
public inputEl: HTMLInputElement,
private plugin: FolderNotesPlugin
plugin: FolderNotesPlugin
) {
super(inputEl);
}

View file

@ -11,7 +11,7 @@ export enum FileSuggestMode {
export class FolderSuggest extends TextInputSuggest<TFolder> {
constructor(
public inputEl: HTMLInputElement,
private plugin: FolderNotesPlugin,
plugin: FolderNotesPlugin,
public folder?: TFolder,
) {
super(inputEl);

View file

@ -3,6 +3,7 @@
import { ISuggestOwner, Scope } from 'obsidian';
import { createPopper, Instance as PopperInstance } from '@popperjs/core';
import FolderNotesPlugin from 'src/main';
const wrapAround = (value: number, size: number): number => {
return ((value % size) + size) % size;
@ -14,6 +15,7 @@ class Suggest<T> {
private suggestions: HTMLDivElement[];
private selectedItem: number;
private containerEl: HTMLElement;
plugin: FolderNotesPlugin;
constructor(
owner: ISuggestOwner<T>,
@ -117,6 +119,7 @@ export abstract class TextInputSuggest<T> implements ISuggestOwner<T> {
private scope: Scope;
private suggestEl: HTMLElement;
private suggest: Suggest<T>;
plugin: FolderNotesPlugin;
constructor(inputEl: HTMLInputElement | HTMLTextAreaElement) {
this.inputEl = inputEl;
@ -160,7 +163,7 @@ export abstract class TextInputSuggest<T> implements ISuggestOwner<T> {
open(container: HTMLElement, inputEl: HTMLElement): void {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
app.keymap.pushScope(this.scope);
this.plugin.app.keymap.pushScope(this.scope);
container.appendChild(this.suggestEl);
this.popper = createPopper(inputEl, this.suggestEl, {
@ -189,7 +192,7 @@ export abstract class TextInputSuggest<T> implements ISuggestOwner<T> {
}
close(): void {
app.keymap.popScope(this.scope);
this.plugin.app.keymap.popScope(this.scope);
this.suggest.setSuggestions([]);
if (this.popper) this.popper.destroy();

View file

@ -12,7 +12,7 @@ export enum FileSuggestMode {
export class TemplateSuggest extends TextInputSuggest<TFile> {
constructor(
public inputEl: HTMLInputElement,
private plugin: FolderNotesPlugin
plugin: FolderNotesPlugin
) {
super(inputEl);
}