From c3c0f3bfbb700f617c4fdfa0926c4ce5289c4449 Mon Sep 17 00:00:00 2001 From: Sebastian Date: Mon, 11 Apr 2022 15:11:44 -0300 Subject: using alarm service intead of timeout api when the wallet is running in a service worker environment --- packages/taler-wallet-webextension/src/wxBackend.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'packages/taler-wallet-webextension/src/wxBackend.ts') diff --git a/packages/taler-wallet-webextension/src/wxBackend.ts b/packages/taler-wallet-webextension/src/wxBackend.ts index 7401fd4fa..91c12c578 100644 --- a/packages/taler-wallet-webextension/src/wxBackend.ts +++ b/packages/taler-wallet-webextension/src/wxBackend.ts @@ -40,12 +40,14 @@ import { Wallet, WalletStoresV1 } from "@gnu-taler/taler-wallet-core"; +import { SetTimeoutTimerAPI, TimerGroup } from "@gnu-taler/taler-wallet-core/src/util/timer"; import { BrowserCryptoWorkerFactory } from "./browserCryptoWorkerFactory.js"; import { BrowserHttpLib } from "./browserHttpLib.js"; import { getReadRequestPermissions } from "./permissions.js"; import { MessageFromBackend, platform } from "./platform/api.js"; import { SynchronousCryptoWorkerFactory } from "./serviceWorkerCryptoWorkerFactory.js"; import { ServiceWorkerHttpLib } from "./serviceWorkerHttpLib.js"; +import { ServiceWorkerTimerAPI } from "./serviceWorkerTimerAPI.js"; /** * Currently active wallet instance. Might be unloaded and @@ -188,17 +190,20 @@ async function reinitWallet(): Promise { } let httpLib; let cryptoWorker; + let timer; if (platform.useServiceWorkerAsBackgroundProcess()) { httpLib = new ServiceWorkerHttpLib(); cryptoWorker = new SynchronousCryptoWorkerFactory(); + timer = new ServiceWorkerTimerAPI(); } else { httpLib = new BrowserHttpLib(); cryptoWorker = new BrowserCryptoWorkerFactory(); + timer = new SetTimeoutTimerAPI(); } console.log("setting wallet"); - const wallet = await Wallet.create(currentDatabase, httpLib, cryptoWorker); + const wallet = await Wallet.create(currentDatabase, httpLib, timer, cryptoWorker); try { await wallet.handleCoreApiRequest("initWallet", "native-init", {}); } catch (e) { @@ -218,7 +223,7 @@ async function reinitWallet(): Promise { (window as any).talerWallet = wallet; } currentWallet = wallet; - walletInit.resolve(); + return walletInit.resolve(); } function parseTalerUriAndRedirect(tabId: number, talerUri: string): void { -- cgit v1.2.3