From 85ef71d2a6cf9565dbb7a7bcca7fdf1c08b68f15 Mon Sep 17 00:00:00 2001 From: Hakadao Date: Sat, 8 Apr 2023 00:45:00 +0800 Subject: [PATCH] feat: improve dock tooltip and add i18n translation --- src/_locales/cmn-CN.yml | 8 ++ src/_locales/cmn-TW.yml | 8 ++ src/_locales/en.yml | 8 ++ src/_locales/jyut.yml | 12 ++- src/components/Select.vue | 5 - src/components/Tooltip.vue | 50 ++++++++++ src/contentScripts/index.ts | 2 +- src/contentScripts/views/App.vue | 155 +++++++++---------------------- 8 files changed, 129 insertions(+), 119 deletions(-) create mode 100644 src/components/Tooltip.vue diff --git a/src/_locales/cmn-CN.yml b/src/_locales/cmn-CN.yml index 5c26a213..0b23a30a 100644 --- a/src/_locales/cmn-CN.yml +++ b/src/_locales/cmn-CN.yml @@ -125,6 +125,14 @@ topbar: sticker: 贴纸 video: 视频 manager: 投稿 +dock: + search: 搜索 + home: 首页 + anime: 番剧 + history: 观看历史 + dark_mode: 暗色模式 + light_mode: 亮色模式 + settings: 设置 home: not_interested_in: 对哪方面不感兴趣? video_removed: 视频已移除 diff --git a/src/_locales/cmn-TW.yml b/src/_locales/cmn-TW.yml index 659edd45..185c68f4 100644 --- a/src/_locales/cmn-TW.yml +++ b/src/_locales/cmn-TW.yml @@ -120,6 +120,14 @@ topbar: sticker: 上傳貼圖 video: 上傳影片 manager: 內容管理 +dock: + search: 搜尋 + home: 首頁 + anime: 動畫 + history: 觀看記錄 + dark_mode: 深色模式 + light_mode: 淺色模式 + settings: 設定 home: not_interested_in: 對哪方面不感興趣? video_removed: 影片已移除 diff --git a/src/_locales/en.yml b/src/_locales/en.yml index a5a59f25..fb7d1ee6 100644 --- a/src/_locales/en.yml +++ b/src/_locales/en.yml @@ -126,6 +126,14 @@ topbar: sticker: Sticker video: Video manager: Manager +dock: + search: Search + home: Home + anime: Anime + history: History + dark_mode: Dark Mode + light_mode: Light Mode + settings: Settings home: not_interested_in: Not interested in... video_removed: Video removed diff --git a/src/_locales/jyut.yml b/src/_locales/jyut.yml index 9bf92a7a..b8f341a8 100644 --- a/src/_locales/jyut.yml +++ b/src/_locales/jyut.yml @@ -39,8 +39,8 @@ settings: dock_position: Dock 放位 dock_position_desc: 放喺螢幕邊度 dock_position_opt: - left: 左側 - right: 右側 + left: 左邊 + right: 右邊 bottom: 下低 theme_color: 佈景色 follow_bilibili_evolved_color: 跟返 Bilibili Evolved 佈景色 @@ -125,6 +125,14 @@ topbar: sticker: 出貼圖 video: Po 片 manager: 內容管理 +dock: + search: 搵嘢 + home: 主頁 + anime: 動畫 + history: 收睇記錄 + dark_mode: 深色模式 + light_mode: 淺色模式 + settings: 校做 home: not_interested_in: 對邊方面冇癮? video_removed: 經已鏟咗條片 diff --git a/src/components/Select.vue b/src/components/Select.vue index fa2bcc98..2699753c 100644 --- a/src/components/Select.vue +++ b/src/components/Select.vue @@ -1,7 +1,4 @@ + + + + diff --git a/src/contentScripts/index.ts b/src/contentScripts/index.ts index a588c8d5..540382f5 100644 --- a/src/contentScripts/index.ts +++ b/src/contentScripts/index.ts @@ -2,7 +2,7 @@ import { onMessage } from 'webext-bridge' import { createApp } from 'vue' import App from './views/App.vue' import { setupApp } from '~/logic/common-setup' -import { SVG_ICONS, getCookie, i18n, setCookie } from '~/utils' +import { SVG_ICONS, i18n } from '~/utils' // Firefox `browser.tabs.executeScript()` requires scripts return a primitive value (() => { diff --git a/src/contentScripts/views/App.vue b/src/contentScripts/views/App.vue index 5db4cf99..81bad950 100644 --- a/src/contentScripts/views/App.vue +++ b/src/contentScripts/views/App.vue @@ -34,6 +34,16 @@ const pages = { Home, Search, Anime, History, Favorites, Video } const isVideoPage = ref(false) const mainApp = ref() +const tooltipPlacement = computed(() => { + if (settings.value.dockPosition === 'left') + return 'right' + else if (settings.value.dockPosition === 'right') + return 'left' + else if (settings.value.dockPosition === 'bottom') + return 'top' + return 'right' +}) + watch( () => activatedPage.value, (newValue, oldValue) => { @@ -133,85 +143,50 @@ function setAppAppearance() { >
-
+
- Search +
- -
+ -
+
- Home +
- -
+ -
+
- Anime +
- -
+ -
+
- History +
- -
+
-
-
- Light mode - Dark mode + +
+ +
- - -
+ -
-
- Settings + +
+
- -
+
@@ -353,31 +311,6 @@ function setAppAppearance() { --at-apply: bg-$bew-warning-color text-black; } - .tooltip { - --at-apply: absolute px-2 py-1 rounded-8 - bg-black dark:bg-white - pointer-events-none - text-sm text-white dark:text-black - opacity-0 duration-300; - white-space: nowrap; - - &.left { - --at-apply: left-[calc(45px+1em)]; - } - - &.right{ - --at-apply: right-[calc(45px+1em)]; - } - - &.bottom { - --at-apply: top--3em left-1/2; - transform: translateX(-50%); - } - } - - &:hover .tooltip { - --at-apply: opacity-100; - } } }