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

packages/app-frontend/src/features/App.vue

Lines changed: 3 additions & 3 deletions
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',

packages/app-frontend/src/features/connection/index.ts

Lines changed: 13 additions & 5 deletions
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

packages/app-frontend/src/index.ts

Lines changed: 1 addition & 1 deletion
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)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy