️ 移除遮罩,自动聚焦

This commit is contained in:
BTMuli
2023-12-06 22:15:53 +08:00
parent 03b83ba2d1
commit 669dec73ba

View File

@@ -1,7 +1,7 @@
/** /**
* @file utils/TGClient.ts * @file utils/TGClient.ts
* @desc 负责米游社客户端的 callback 处理 * @desc 负责米游社客户端的 callback 处理
* @since Beta v0.3.6 * @since Beta v0.3.7
*/ */
import { event, invoke } from "@tauri-apps/api"; import { event, invoke } from "@tauri-apps/api";
@@ -107,6 +107,22 @@ class TGClient {
await invoke("execute_js", { label: "mhy_client", js: executeJS }); await invoke("execute_js", { label: "mhy_client", js: executeJS });
} }
/**
* @func hideOverlay
* @since Beta v0.3.7
* @desc 隐藏遮罩
* @returns {void}
*/
async hideOverlay(): Promise<void> {
const executeJS = `javascript:(function(){
if (document.getElementById('mihoyo_landscape') !== null) {
let box = document.getElementById('mihoyo_landscape');
box.remove();
}
})();`;
await invoke("execute_js", { label: "mhy_client", js: executeJS });
}
/** /**
* @func getUrl * @func getUrl
* @since Beta v0.3.6 * @since Beta v0.3.6
@@ -135,7 +151,7 @@ class TGClient {
/** /**
* @func open * @func open
* @since Beta v0.3.6 * @since Beta v0.3.7
* @desc 打开米游社客户端 * @desc 打开米游社客户端
* @param {string} func - 方法名 * @param {string} func - 方法名
* @param {string} url - url * @param {string} url - url
@@ -146,6 +162,7 @@ class TGClient {
try { try {
await this.window.close(); await this.window.close();
} catch (e) { } catch (e) {
console.error(e);
await invoke<InvokeArg>("create_mhy_client", { await invoke<InvokeArg>("create_mhy_client", {
func: "default", func: "default",
url: "https://api-static.mihoyo.com/", url: "https://api-static.mihoyo.com/",
@@ -156,6 +173,8 @@ class TGClient {
if (url === undefined) { if (url === undefined) {
url = this.getUrl(func); url = this.getUrl(func);
this.route = [url]; this.route = [url];
} else if (func.startsWith("web_act")) {
this.route = [url];
} else if (func !== "closePage") { } else if (func !== "closePage") {
this.route.push(url); this.route.push(url);
} }
@@ -163,11 +182,12 @@ class TGClient {
await invoke<InvokeArg>("create_mhy_client", { func, url }); await invoke<InvokeArg>("create_mhy_client", { func, url });
this.window = WebviewWindow.getByLabel("mhy_client"); this.window = WebviewWindow.getByLabel("mhy_client");
await this.window?.show(); await this.window?.show();
await this.window?.setFocus();
} }
/** /**
* @func handleCallback * @func handleCallback
* @since Beta v0.3.5 * @since Beta v0.3.7
* @desc 处理米游社客户端的 callback * @desc 处理米游社客户端的 callback
* @param {Event<string>} arg - 事件参数 * @param {Event<string>} arg - 事件参数
* @returns {any} - 返回值 * @returns {any} - 返回值
@@ -175,6 +195,7 @@ class TGClient {
async handleCallback(arg: Event<string>): Promise<any> { async handleCallback(arg: Event<string>): Promise<any> {
console.log(`[${arg.windowLabel}] ${arg.payload}`); console.log(`[${arg.windowLabel}] ${arg.payload}`);
await this.hideSideBar(); await this.hideSideBar();
await this.hideOverlay();
const { method, payload, callback } = <NormalArg>JSON.parse(arg.payload); const { method, payload, callback } = <NormalArg>JSON.parse(arg.payload);
switch (method) { switch (method) {
case "getStatusBarHeight": case "getStatusBarHeight":
@@ -398,7 +419,7 @@ class TGClient {
/** /**
* @func pushPage * @func pushPage
* @since Beta v0.3.4 * @since Beta v0.3.7
* @desc 打开米游社客户端的页面 * @desc 打开米游社客户端的页面
* @param {unknown} payload - 请求参数 * @param {unknown} payload - 请求参数
* @returns {void} - 无返回值 * @returns {void} - 无返回值
@@ -418,6 +439,7 @@ class TGClient {
} }
await this.open("pushPage", url); await this.open("pushPage", url);
await this.hideSideBar(); await this.hideSideBar();
await this.hideOverlay();
} }
/** /**