Skip to content

Commit f6b0062

Browse files
committed
fix: reload only on page navigation event
1 parent af51c9d commit f6b0062

File tree

3 files changed

+17
-9
lines changed

3 files changed

+17
-9
lines changed

Diff for: packages/app-frontend/src/features/App.vue

+3-3
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ export default defineComponent({
3737
},
3838
3939
setup() {
40-
const { isConnected, isInitializing, showDisplayDisconnected, connectedTimes } = useAppConnection()
40+
const { isConnected, isInitializing, showDisplayDisconnected, reloadTimes } = useAppConnection()
4141
4242
function updateTheme(theme: string) {
4343
if (theme === 'dark' || theme === 'high-contrast' || (theme === 'auto' && chromeTheme === 'dark')) {
@@ -81,7 +81,7 @@ export default defineComponent({
8181
isConnected,
8282
isInitializing,
8383
showDisplayDisconnected,
84-
connectedTimes,
84+
reloadTimes,
8585
showAppsSelector,
8686
orientation,
8787
isChrome,
@@ -110,7 +110,7 @@ export default defineComponent({
110110

111111
<div
112112
v-else
113-
:key="connectedTimes"
113+
:key="reloadTimes"
114114
class="w-full h-full flex"
115115
:class="{
116116
'flex-col': orientation === 'portrait',

Diff for: packages/app-frontend/src/features/connection/index.ts

+13-5
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ import { useNow } from '@vueuse/core'
44
const isConnected = ref(false)
55
const isInitializing = ref(true)
66
const lastDisconnect = ref(0)
7-
const connectedTimes = ref(0)
7+
const reloadTimes = ref(0)
8+
let reloadRegistered = false
89

910
export function useAppConnection() {
1011
const now = useNow({
@@ -26,20 +27,27 @@ export function useAppConnection() {
2627
isInitializing,
2728
lastDisconnect,
2829
showDisplayDisconnected,
29-
connectedTimes,
30+
reloadTimes,
3031
}
3132
}
3233

33-
export function setAppConnected(value: boolean, force = false) {
34+
export function setAppConnected(value: boolean, force = false, fromReload = false) {
35+
// We got disconnected from a page reload
36+
if (!value) {
37+
reloadRegistered = fromReload
38+
}
39+
3440
if (force) {
3541
lastDisconnect.value = 0
3642
}
3743
else if (!value && isConnected.value) {
3844
lastDisconnect.value = Date.now()
3945
}
4046
isConnected.value = value
41-
if (value) {
42-
connectedTimes.value++
47+
48+
// We are reconnected after a page reload
49+
if (value && reloadRegistered) {
50+
reloadTimes.value++
4351
}
4452
}
4553

Diff for: packages/app-frontend/src/index.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ export async function initDevTools(shell: Shell) {
1919
app.mount('#app')
2020
connectApp(app, shell)
2121
shell.onReload(() => {
22-
setAppConnected(false, true)
22+
setAppConnected(false, true, true)
2323
getBridge()?.removeAllListeners()
2424
connectApp(app, shell)
2525
})

0 commit comments

Comments
 (0)