mirror of
https://github.com/4gray/iptvnator.git
synced 2026-10-16 14:16:16 -08:00
fix(settings): protect unsaved edits on window close, quit, and reload (#1394)
This commit is contained in:
1 parent
cf74f7e4a0
commit
ae375e0e8f
22 files changed
+1942
-14
No files matched your search
@@ -618,6 +618,27 @@ export interface ElectronBridgeApi {
|
||||
onWindowStateChange: (
|
||||
callback: (state: ElectronBridgeWindowState) => void
|
||||
) => () => void;
|
||||
/**
|
||||
* While active, the main process intercepts window close / app quit and
|
||||
* pushes a close request to the renderer instead of closing. Used by the
|
||||
* settings page while its form holds unsaved edits.
|
||||
*/
|
||||
setWindowCloseGuard: (active: boolean) => Promise<void>;
|
||||
/**
|
||||
* Completes a close the guard intercepted: the main process re-runs the
|
||||
* original intent (window close or app quit) with the guard bypassed.
|
||||
*/
|
||||
confirmWindowClose: () => Promise<void>;
|
||||
/**
|
||||
* Abandons a close the guard intercepted (the user stays), so the
|
||||
* remembered close-vs-quit intent cannot leak into a later attempt.
|
||||
* Carries the id of the request being abandoned: a cancellation that
|
||||
* arrives after a NEWER interception must not wipe that newer intent.
|
||||
*/
|
||||
cancelWindowClose: (requestId?: number) => Promise<void>;
|
||||
onWindowCloseRequested: (
|
||||
callback: (requestId: number) => void
|
||||
) => () => void;
|
||||
fetchPlaylistByUrl: (
|
||||
url: string,
|
||||
title?: string,
|
||||
|
||||
Reference in new issue
Block a user