diff options
author | Paul Frazee <pfrazee@gmail.com> | 2023-11-16 08:18:59 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-16 08:18:59 -0800 |
commit | a84b2f9f2f64b1d434c5adbb12af6f7d76ba42ea (patch) | |
tree | e430b8032350caa18b8cdd3140a4d94c96dfd6ce /src/state/shell/composer.tsx | |
parent | 0de8d40981fecdeaec92307bafe121ccb2091b45 (diff) | |
download | voidsky-a84b2f9f2f64b1d434c5adbb12af6f7d76ba42ea.tar.zst |
Close active elems (react-query refactor) (#1926)
* Refactor closeAny and closeAllActiveElements * Add close lightbox * Switch to hooks * Fixes
Diffstat (limited to 'src/state/shell/composer.tsx')
-rw-r--r-- | src/state/shell/composer.tsx | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/state/shell/composer.tsx b/src/state/shell/composer.tsx index a350bd7f3..70d77a7e0 100644 --- a/src/state/shell/composer.tsx +++ b/src/state/shell/composer.tsx @@ -34,13 +34,15 @@ export interface ComposerOpts { type StateContext = ComposerOpts | undefined type ControlsContext = { openComposer: (opts: ComposerOpts) => void - closeComposer: () => void + closeComposer: () => boolean } const stateContext = React.createContext<StateContext>(undefined) const controlsContext = React.createContext<ControlsContext>({ openComposer(_opts: ComposerOpts) {}, - closeComposer() {}, + closeComposer() { + return false + }, }) export function Provider({children}: React.PropsWithChildren<{}>) { @@ -51,11 +53,14 @@ export function Provider({children}: React.PropsWithChildren<{}>) { setState(opts) }, closeComposer() { + let wasOpen = !!state setState(undefined) + return wasOpen }, }), - [setState], + [setState, state], ) + return ( <stateContext.Provider value={state}> <controlsContext.Provider value={api}> |