clean up
This commit is contained in:
36
app.js
36
app.js
@@ -5,7 +5,6 @@ import * as ui from './ui.js';
|
||||
import * as timer from './timer.js';
|
||||
import camera from './camera.js'; // Default export
|
||||
import audioManager from './audio.js';
|
||||
import deepLinkManager from './deeplinks.js';
|
||||
import * as pushFlic from './pushFlicIntegration.js';
|
||||
|
||||
// --- Core Game Actions ---
|
||||
@@ -338,15 +337,9 @@ function setupServiceWorker() {
|
||||
|
||||
// Initialize Flic integration (which will try to subscribe)
|
||||
initFlic();
|
||||
|
||||
// Setup deep links *after* SW might be ready
|
||||
setupDeepLinks();
|
||||
})
|
||||
.catch(error => {
|
||||
console.error('ServiceWorker registration failed:', error);
|
||||
// Still setup deep links even if SW fails
|
||||
setupDeepLinks();
|
||||
// Maybe inform user push notifications won't work
|
||||
});
|
||||
});
|
||||
// Listen for SW controller changes
|
||||
@@ -357,40 +350,15 @@ function setupServiceWorker() {
|
||||
|
||||
} else {
|
||||
console.warn('ServiceWorker not supported.');
|
||||
// Setup deep links anyway
|
||||
window.addEventListener('load', setupDeepLinks);
|
||||
}
|
||||
}
|
||||
|
||||
function handleServiceWorkerMessage(event) {
|
||||
console.log('[App] Message received from Service Worker:', event.data);
|
||||
console.log('[App] Message received from Service Worker:', event.data);
|
||||
if (event.data?.type === 'flic-action') {
|
||||
const { action, button, timestamp } = event.data;
|
||||
pushFlic.handleFlicAction(action, button, timestamp);
|
||||
}
|
||||
else if (event.data?.type === 'ACTION') { // Handle deep link actions sent from SW
|
||||
console.log('Received action from service worker via postMessage:', event.data.action);
|
||||
deepLinkManager.handleAction(event.data.action);
|
||||
}
|
||||
// Add other message type handlers if needed
|
||||
}
|
||||
|
||||
// --- Deep Link Setup ---
|
||||
function setupDeepLinks() {
|
||||
deepLinkManager.registerHandler('start', startGame);
|
||||
deepLinkManager.registerHandler('pause', pauseGame);
|
||||
deepLinkManager.registerHandler('toggle', togglePauseResume);
|
||||
deepLinkManager.registerHandler('nextplayer', nextPlayer);
|
||||
deepLinkManager.registerHandler('prevplayer', previousPlayer); // Add previous player handler
|
||||
deepLinkManager.registerHandler('reset', handleResetButtonClick); // Show confirmation
|
||||
|
||||
// Process initial deep link on load
|
||||
deepLinkManager.processDeepLink();
|
||||
|
||||
// Listen for subsequent deep links
|
||||
window.addEventListener('hashchange', deepLinkManager.processDeepLink);
|
||||
// Also listen for popstate if using history API or query params
|
||||
window.addEventListener('popstate', deepLinkManager.processDeepLink);
|
||||
}
|
||||
|
||||
// --- Flic Integration Setup ---
|
||||
@@ -453,7 +421,7 @@ function initialize() {
|
||||
ui.elements.resetCancelButton.addEventListener('click', handleResetCancel);
|
||||
ui.elements.cameraButton.addEventListener('click', handleCameraButtonClick);
|
||||
|
||||
// 6. Setup Service Worker (which also initializes Flic and Deep Links)
|
||||
// 6. Setup Service Worker (which also initializes Flic)
|
||||
setupServiceWorker();
|
||||
|
||||
// 7. Initial UI Update based on loaded state
|
||||
|
||||
Reference in New Issue
Block a user