From 7a8c0892eac3e1430fadd3b470a1198c5d4ab345 Mon Sep 17 00:00:00 2001 From: BTMuli Date: Fri, 7 Apr 2023 17:15:35 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix(TGWindow):=20=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E9=83=A8=E5=88=86=E7=AA=97=E5=8F=A3=E6=89=93=E5=BC=80?= =?UTF-8?q?=E4=B8=8D=E5=8F=AF=E8=A7=81=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/t-calendar.vue | 15 ++++++++------- src/components/t-pool.vue | 4 ++-- src/components/t-position.vue | 2 +- src/pages/Announcements.vue | 4 ++-- src/utils/TGWindow.ts | 6 ++++-- src/views/t-news.vue | 8 ++++---- 6 files changed, 21 insertions(+), 18 deletions(-) diff --git a/src/components/t-calendar.vue b/src/components/t-calendar.vue index d13f43ae..c22862d9 100644 --- a/src/components/t-calendar.vue +++ b/src/components/t-calendar.vue @@ -39,7 +39,7 @@ alt="material.content_id" :src="material.icon" class="calendar-icon" - @click="showContent(material.content_id)" + @click="showContent(material.content_id, material.name)" />
@@ -49,7 +49,7 @@ alt="content.content_id" :src="content.icon" class="calendar-icon" - @click="showContent(content.content_id)" + @click="showContent(content.content_id, content.name)" />
@@ -73,7 +73,7 @@ alt="material.content_id" :src="material.icon" class="calendar-icon" - @click="showContent(material.content_id)" + @click="showContent(material.content_id, material.name)" />
@@ -83,7 +83,7 @@ alt="content.content_id" :src="content.icon" class="calendar-icon" - @click="showContent(content.content_id)" + @click="showContent(content.content_id, content.name)" />
@@ -101,6 +101,7 @@ import { TGAppData } from "../data/index"; import { type Map } from "../interface/Base"; import { CalendarData, CalendarItem } from "../interface/Calendar"; import { OBC_CONTENT_API } from "../plugins/Mys/interface/utils"; +import { createTGWindow } from "../utils/TGWindow"; // loading const loading = ref(true as boolean); @@ -168,9 +169,9 @@ function getCalendar (day: number) { return calendarData.value[week]; } -function showContent (contentId: number) { - // todo:二级跳转,目前先直接跳到角色详情页 - window.open(OBC_CONTENT_API.replace("{content_id}", contentId.toString())); +function showContent (contentId: number, name: string) { + const url = OBC_CONTENT_API.replace("{content_id}", contentId.toString()); + createTGWindow(url, "素材详情", name, 800, 600, true); } function getContents (day: number) { diff --git a/src/components/t-pool.vue b/src/components/t-pool.vue index ddf45b79..48f8a5ef 100644 --- a/src/components/t-pool.vue +++ b/src/components/t-pool.vue @@ -138,7 +138,7 @@ function checkCover (data: GachaData[]) { } function toOuter (url: string, title: string) { - createTGWindow(url, "祈愿", title, 1200, 800, true); + createTGWindow(url, "祈愿", title, 1200, 800, true, false); } function getLastPoolTime (time: number) { @@ -156,7 +156,7 @@ function toPost (pool: GachaCard) { post_id: pool.post_id.toString(), }, }).href; - createTGWindow(path, "限时祈愿", pool.title, 960, 720, false); + createTGWindow(path, "限时祈愿", pool.title, 960, 720, false, false); } diff --git a/src/components/t-position.vue b/src/components/t-position.vue index c3f45a9b..e8a52957 100644 --- a/src/components/t-position.vue +++ b/src/components/t-position.vue @@ -118,7 +118,7 @@ async function toPost (card: PositionCard) { }, }).href; // 打开新窗口 - createTGWindow(path, "近期活动", card.title, 960, 720, false); + createTGWindow(path, "近期活动", card.title, 960, 720, false, false); } diff --git a/src/pages/Announcements.vue b/src/pages/Announcements.vue index 168c41a9..9679234d 100644 --- a/src/pages/Announcements.vue +++ b/src/pages/Announcements.vue @@ -144,7 +144,7 @@ async function toPost (item: AnnoListCard) { anno_id: item.id, }, }).href; - createTGWindow(path, "游戏内公告", item.title, 960, 720, false); + createTGWindow(path, "游戏内公告", item.title, 960, 720, false, false); } async function toJson (item: AnnoListCard) { @@ -155,7 +155,7 @@ async function toJson (item: AnnoListCard) { anno_id: item.id, }, }).href; - createTGWindow(path, "游戏内公告-JSON", item.title, 960, 720, false); + createTGWindow(path, "游戏内公告-JSON", item.title, 960, 720, false, false); } diff --git a/src/utils/TGWindow.ts b/src/utils/TGWindow.ts index a3cd76c2..8fc8c4b2 100644 --- a/src/utils/TGWindow.ts +++ b/src/utils/TGWindow.ts @@ -15,6 +15,7 @@ import { window as TauriWindow } from "@tauri-apps/api"; * @param {number} width 窗口宽度 * @param {number} height 窗口高度 * @param {boolean} resizable 是否可调整大小 + * @param {boolean} visible 是否可见 * @returns {void} */ export function createTGWindow ( @@ -24,6 +25,7 @@ export function createTGWindow ( width: number, height: number, resizable: boolean, + visible: boolean = true, ): void { // 计算窗口位置 const left = (window.screen.width - width) / 2; @@ -37,7 +39,7 @@ export function createTGWindow ( resizable, url, title, - visible: false, + visible, }); void new TauriWindow.WindowManager(label).close().then(() => { void new TauriWindow.WebviewWindow(label, { @@ -48,7 +50,7 @@ export function createTGWindow ( resizable, url, title, - visible: false, + visible, }); }); } diff --git a/src/views/t-news.vue b/src/views/t-news.vue index affaee91..ac9763b6 100644 --- a/src/views/t-news.vue +++ b/src/views/t-news.vue @@ -296,7 +296,7 @@ async function toPost (item: NewsCard | string) { post_id: item, }, }).href; - createTGWindow(path, "帖子-Dev", item, 960, 720, false); + createTGWindow(path, "帖子-Dev", item, 960, 720, false, false); } else { const path = router.resolve({ name: "帖子详情", @@ -305,7 +305,7 @@ async function toPost (item: NewsCard | string) { post_id: item.post_id.toString(), }, }).href; - createTGWindow(path, "帖子", item.title, 960, 720, false); + createTGWindow(path, "帖子", item.title, 960, 720, false, false); } } async function toJson (item: NewsCard | string) { @@ -317,7 +317,7 @@ async function toJson (item: NewsCard | string) { post_id: item, }, }).href; - createTGWindow(path, "帖子-JSON-Dev", `${item}-JSON`, 960, 720, false); + createTGWindow(path, "帖子-JSON-Dev", `${item}-JSON`, 960, 720, false, false); } else { const path = router.resolve({ name: "帖子详情(JSON)", @@ -326,7 +326,7 @@ async function toJson (item: NewsCard | string) { post_id: item.post_id.toString(), }, }).href; - createTGWindow(path, "帖子-JSON", `${item.title}-JSON`, 960, 720, false); + createTGWindow(path, "帖子-JSON", `${item.title}-JSON`, 960, 720, false, false); } }