1
- import { exit } from '@tauri-apps/api/process'
2
- import { invoke } from '@tauri-apps/api/tauri'
3
- import { appWindow } from '@tauri-apps/api/window'
4
1
import { createContext , useContext , createMemo , type Component , Accessor } from 'solid-js'
5
2
import { createStore , produce } from 'solid-js/store'
6
- import { useEventListener } from 'solidjs-use'
7
3
import { attachConsole } from 'tauri-plugin-log-api'
8
4
import { AppAPIProvider } from '../api'
9
5
import { AppCameraProvider } from '../camera'
@@ -13,8 +9,6 @@ import { AppUIProvider } from '../ui'
13
9
import type { Context , DebugMode } from '@static/types'
14
10
import type { AppStore } from '@static/types/interfaces'
15
11
import type { UnlistenFn } from '@tauri-apps/api/event'
16
- import { usePersistentStore } from '@src/store/tauriStore'
17
- import { ExitCodes } from '@static/types/enums'
18
12
19
13
interface AppContext {
20
14
getDetachConsole : Accessor < Promise < UnlistenFn > >
@@ -82,66 +76,6 @@ export const AppProvider: Component<Context> = (props) => {
82
76
const getDetachConsole = createMemo ( ( ) => detachConsole )
83
77
//#endregion
84
78
85
- const handleAppBoot = ( ) => {
86
- const { set, get } = usePersistentStore ( )
87
-
88
- useEventListener ( document , 'DOMContentLoaded' , ( ) => {
89
- invoke ( 'get_user' )
90
- . then ( ( config ) => {
91
- const userName = config as string
92
- console . log ( '[App Boot]: Welcome ' , userName )
93
- get ( 'settings' ) . then ( ( settings ) => {
94
- if ( userName ) {
95
- set ( 'settings' , { user : userName , ...settings } )
96
- }
97
- } )
98
- } )
99
- . catch ( ( e ) => console . error ( e ) )
100
-
101
- // check if the window state is saved and restore it if it is
102
-
103
- invoke ( 'handle_save_window_state' ) . then ( ( ) => {
104
- console . log ( '[App Boot]: saved window state' )
105
- } )
106
-
107
- setTimeout ( ( ) => invoke ( 'close_splashscreen' ) , 15000 )
108
- } )
109
- }
110
-
111
- const handleAppExit = async ( main = false ) => {
112
- // TODO: call these before the app exits to shutdown gracefully
113
-
114
- await invoke ( 'handle_save_window_state' )
115
- console . log ( '[App Close]: saved window state' )
116
-
117
- if ( main ) {
118
- const { save } = usePersistentStore ( )
119
- await save ( )
120
- // stopMDNS()
121
- // stopWebsocketClients()
122
- // saveSettings()
123
- // stopPythonBackend()
124
- await exit ( ExitCodes . USER_EXIT )
125
- }
126
-
127
- await appWindow . close ( )
128
- }
129
-
130
- const handleTitlebar = ( main = false ) => {
131
- const titlebar = document . getElementsByClassName ( 'titlebar' )
132
- if ( titlebar ) {
133
- useEventListener ( document . getElementById ( 'titlebar-minimize' ) , 'click' , ( ) => {
134
- appWindow . minimize ( )
135
- } )
136
- useEventListener ( document . getElementById ( 'titlebar-maximize' ) , 'click' , ( ) => {
137
- appWindow . toggleMaximize ( )
138
- } )
139
- useEventListener ( document . getElementById ( 'titlebar-close' ) , 'click' , async ( ) => {
140
- await handleAppExit ( main )
141
- } )
142
- }
143
- }
144
-
145
79
return (
146
80
< AppContext . Provider
147
81
value = { {
0 commit comments