From abb440343afe56d3e660ff8b4315e30d076667f0 Mon Sep 17 00:00:00 2001 From: Samuel Elliott Date: Sun, 12 Jun 2022 22:08:14 +0100 Subject: [PATCH] Add `x-appcolorscheme` header for web service requests --- src/api/nooklink.ts | 1 + src/api/splatnet2.ts | 1 + src/app/main/electron.ts | 1 + src/app/main/webservices.ts | 3 ++- 4 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/api/nooklink.ts b/src/api/nooklink.ts index bd4cb9d..e233672 100644 --- a/src/api/nooklink.ts +++ b/src/api/nooklink.ts @@ -104,6 +104,7 @@ export default class NooklinkApi { headers: { 'Upgrade-Insecure-Requests': '1', 'User-Agent': NOOKLINK_WEBSERVICE_USERAGENT, + 'x-appcolorscheme': 'DARK', 'x-gamewebtoken': webserviceToken.accessToken, 'dnt': '1', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', diff --git a/src/api/splatnet2.ts b/src/api/splatnet2.ts index 28ecf5d..b287bfc 100644 --- a/src/api/splatnet2.ts +++ b/src/api/splatnet2.ts @@ -238,6 +238,7 @@ ${colour} headers: { 'Upgrade-Insecure-Requests': '1', 'User-Agent': SPLATNET2_WEBSERVICE_USERAGENT, + 'x-appcolorscheme': 'DARK', 'x-gamewebtoken': webserviceToken.accessToken, 'dnt': '1', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', diff --git a/src/app/main/electron.ts b/src/app/main/electron.ts index 11951dd..b2edfe3 100644 --- a/src/app/main/electron.ts +++ b/src/app/main/electron.ts @@ -11,6 +11,7 @@ export const ipcMain = electron.ipcMain; export const Menu = electron.Menu; export const MenuItem = electron.MenuItem; export const nativeImage = electron.nativeImage; +export const nativeTheme = electron.nativeTheme; export const Notification = electron.Notification; export const session = electron.session; export const ShareMenu = electron.ShareMenu; diff --git a/src/app/main/webservices.ts b/src/app/main/webservices.ts index 30cf3d9..dc29af2 100644 --- a/src/app/main/webservices.ts +++ b/src/app/main/webservices.ts @@ -3,7 +3,7 @@ import { constants } from 'node:fs'; import * as fs from 'node:fs/promises'; import { Buffer } from 'node:buffer'; import createDebug from 'debug'; -import { app, BrowserWindow, dialog, IpcMainInvokeEvent, Menu, MenuItem, ShareMenu, shell, WebContents } from './electron.js'; +import { app, BrowserWindow, dialog, IpcMainInvokeEvent, Menu, MenuItem, nativeTheme, ShareMenu, shell, WebContents } from './electron.js'; import fetch from 'node-fetch'; import ZncApi from '../../api/znc.js'; import { dev } from '../../util/product.js'; @@ -101,6 +101,7 @@ export default async function openWebService( window.loadURL(url.toString(), { extraHeaders: Object.entries({ + 'x-appcolorscheme': nativeTheme.shouldUseDarkColors ? 'DARK' : 'LIGHT', 'x-gamewebtoken': webserviceToken.result.accessToken, 'dnt': '1', 'X-Requested-With': 'com.nintendo.znca',