fix: close dialog when shutdown
This commit is contained in:
parent
671315e9ad
commit
c4fc2c44e7
@ -17,6 +17,7 @@ class Addon {
|
||||
columns: Array<ColumnOptions>;
|
||||
rows: Array<{ [dataKey: string]: string }>;
|
||||
};
|
||||
dialog?: DialogHelper;
|
||||
};
|
||||
// Lifecycle hooks
|
||||
public hooks: typeof hooks;
|
||||
@ -53,6 +54,7 @@ class Addon {
|
||||
import { BasicTool, unregister } from "zotero-plugin-toolkit/dist/basic";
|
||||
import { UITool } from "zotero-plugin-toolkit/dist/tools/ui";
|
||||
import { PreferencePaneManager } from "zotero-plugin-toolkit/dist/managers/preferencePane";
|
||||
import { DialogHelper } from "zotero-plugin-toolkit/dist/helpers/dialog";
|
||||
|
||||
export class MyToolkit extends BasicTool {
|
||||
UI: UITool;
|
||||
|
@ -83,6 +83,7 @@ async function onStartup() {
|
||||
|
||||
function onShutdown(): void {
|
||||
ztoolkit.unregisterAll();
|
||||
addon.data.dialog?.window?.close();
|
||||
// Remove addon object
|
||||
addon.data.alive = false;
|
||||
delete Zotero[config.addonInstance];
|
||||
|
@ -922,10 +922,13 @@ export class HelperExampleFactory {
|
||||
})
|
||||
.setDialogData(dialogData)
|
||||
.open("Dialog Example");
|
||||
addon.data.dialog = dialogHelper;
|
||||
await dialogData.unloadLock.promise;
|
||||
ztoolkit.getGlobal("alert")(
|
||||
`Close dialog with ${dialogData._lastButtonId}.\nCheckbox: ${dialogData.checkboxValue}\nInput: ${dialogData.inputValue}.`
|
||||
);
|
||||
addon.data.dialog = undefined;
|
||||
addon.data.alive &&
|
||||
ztoolkit.getGlobal("alert")(
|
||||
`Close dialog with ${dialogData._lastButtonId}.\nCheckbox: ${dialogData.checkboxValue}\nInput: ${dialogData.inputValue}.`
|
||||
);
|
||||
ztoolkit.log(dialogData);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user