diff options
Diffstat (limited to 'packages/taler-wallet-webextension/src/wxBackend.ts')
-rw-r--r-- | packages/taler-wallet-webextension/src/wxBackend.ts | 81 |
1 files changed, 9 insertions, 72 deletions
diff --git a/packages/taler-wallet-webextension/src/wxBackend.ts b/packages/taler-wallet-webextension/src/wxBackend.ts index 1ecd66f05..95d31c519 100644 --- a/packages/taler-wallet-webextension/src/wxBackend.ts +++ b/packages/taler-wallet-webextension/src/wxBackend.ts @@ -122,18 +122,18 @@ async function sum(ns: Array<number>): Promise<number> { } const extensionHandlers: ExtensionHandlerType = { - isInjectionEnabled, isAutoOpenEnabled, + isDomainTrusted, }; -async function isInjectionEnabled(): Promise<boolean> { +async function isAutoOpenEnabled(): Promise<boolean> { const settings = await platform.getSettingsFromStorage(); - return settings.injectTalerSupport === true; + return settings.autoOpen === true; } -async function isAutoOpenEnabled(): Promise<boolean> { +async function isDomainTrusted(): Promise<boolean> { const settings = await platform.getSettingsFromStorage(); - return settings.autoOpen === true; + return settings.injectTalerSupport === true; } const backendHandlers: BackendHandlerType = { @@ -142,14 +142,8 @@ const backendHandlers: BackendHandlerType = { resetDb, runGarbageCollector, setLoggingLevel, - containsHeaderListener, - toggleHeaderListener, }; -async function containsHeaderListener(): Promise<ExtendedPermissionsResponse> { - const result = platform.containsTalerHeaderListener(); - return { newValue: result }; -} async function setLoggingLevel({ tag, @@ -309,8 +303,10 @@ async function reinitWallet(): Promise<void> { return; } wallet.addNotificationListener((message) => { - logger.info("wallet -> ui", message); - platform.sendMessageToAllChannels(message); + platform.sendMessageToAllChannels({ + type: "wallet", + notification: message + }); }); platform.keepAlive(() => { @@ -360,65 +356,6 @@ export async function wxMain(): Promise<void> { console.error(e); } - // platform.registerDeclarativeRedirect(); - // if (false) { - /** - * this is not working reliable on chrome, just - * intercepts queries after the user clicks the popups - * which doesn't make sense, keeping it to make more tests - */ - - logger.trace("check taler header listener"); - const enabled = platform.containsTalerHeaderListener() - if (!enabled) { - logger.info("header listener on") - const perm = await platform.getPermissionsApi().containsHostPermissions() - if (perm) { - logger.info("header listener allowed") - try { - platform.registerTalerHeaderListener(); - } catch (e) { - logger.error("could not register header listener", e); - } - } else { - logger.info("header listener requested") - await platform.getPermissionsApi().requestHostPermissions() - } - } - - // On platforms that support it, also listen to external - // modification of permissions. - platform.getPermissionsApi().addPermissionsListener((perm, lastError) => { - logger.info(`permission added: ${perm}`,) - if (lastError) { - logger.error( - `there was a problem trying to get permission ${perm}`, - lastError, - ); - return; - } - platform.registerTalerHeaderListener(); - }); - - // } } -async function toggleHeaderListener( - newVal: boolean, -): Promise<ExtendedPermissionsResponse> { - logger.trace("new extended permissions value", newVal); - if (newVal) { - try { - platform.registerTalerHeaderListener(); - return { newValue: true }; - } catch (e) { - logger.error("FAIL to toggle", e) - } - return { newValue: false } - } - - const rem = await platform.getPermissionsApi().removeHostPermissions(); - logger.trace("permissions removed:", rem); - return { newValue: false }; -} |