From f05f91191602e58c34046e8e35d2647dc072b617 Mon Sep 17 00:00:00 2001 From: mattyatea Date: Thu, 21 Sep 2023 17:31:23 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=E3=83=A1=E3=83=87=E3=82=A3=E3=82=A2?= =?UTF-8?q?=E3=82=BF=E3=82=A4=E3=83=A0=E3=83=A9=E3=82=A4=E3=83=B3=E5=AE=9F?= =?UTF-8?q?=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- locales/en-US.yml | 4 ++++ locales/index.d.ts | 4 ++++ locales/ja-JP.yml | 4 ++++ package.json | 2 +- packages/frontend/src/pages/settings/general.vue | 7 ++++--- packages/frontend/src/pages/timeline.tutorial.vue | 1 + packages/frontend/src/pages/timeline.vue | 15 +++++++++------ packages/frontend/src/store.ts | 6 +++++- 8 files changed, 32 insertions(+), 11 deletions(-) diff --git a/locales/en-US.yml b/locales/en-US.yml index 46d77611b5..db61b10250 100644 --- a/locales/en-US.yml +++ b/locales/en-US.yml @@ -166,6 +166,8 @@ flagAsCat: "Mark this account as a cat" flagAsCatDescription: "Enable this option to mark this account as a cat." flagShowTimelineReplies: "Show replies in timeline" flagShowTimelineRepliesDescription: "Shows replies of users to notes of other users in the timeline if turned on." +showMediaTimeline: "Show Media timeline" +showMediaTimelineInfo: "When on, the media timeline is displayed on the top bar. When turned off, it will not be displayed." autoAcceptFollowed: "Automatically approve follow requests from users you're following" addAccount: "Add account" reloadAccountsList: "Reload account list" @@ -293,6 +295,7 @@ theme: "Themes" themeForLightMode: "Theme to use in Light Mode" themeForDarkMode: "Theme to use in Dark Mode" gamingMode: "Gaming Mode" +gamingModeInfo: "It makes a nice gradation of buttons and other decorations. There is no intense blinking, etc." light: "Light" dark: "Dark" lightThemes: "Light themes" @@ -1708,6 +1711,7 @@ _timelineTutorial: title: "How to use Misskey" step1_1: "This is the \"timeline\". All \"notes\" submitted on {name} will be chronologically displayed here." step1_2: "There are a few different timelines. For example, the \"Home timeline\" will contain notes of users you follow, and the \"Local timeline\" will contain notes from all users of {name}." + step1_3: 'Besides these two, "Social Timeline" is like Home TL + Local TL, and "Media Timeline" is a stream of notes posted with some file at {name}.' step2_1: "Let's try posting a note next. You can do so by pressing the button with a pencil icon." step2_2: "How about writing a self-introduction, or just \"Hello {name}!\" if you don't feel like it?" step3_1: "Finished posting your first note?" diff --git a/locales/index.d.ts b/locales/index.d.ts index a1285d21c4..9c4ed6505c 100644 --- a/locales/index.d.ts +++ b/locales/index.d.ts @@ -168,6 +168,8 @@ export interface Locale { "flagAsCat": string; "flagAsCatDescription": string; "flagShowTimelineReplies": string; + "showMediaTimeline": string; + "showMediaTimelineInfo": string; "flagShowTimelineRepliesDescription": string; "autoAcceptFollowed": string; "addAccount": string; @@ -296,6 +298,7 @@ export interface Locale { "themeForLightMode": string; "themeForDarkMode": string; "gamingMode": string; + "gamingModeInfo": string; "light": string; "dark": string; "lightThemes": string; @@ -1825,6 +1828,7 @@ export interface Locale { "title": string; "step1_1": string; "step1_2": string; + "step1_3": string; "step2_1": string; "step2_2": string; "step3_1": string; diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml index 591fefb061..a8285cfed3 100644 --- a/locales/ja-JP.yml +++ b/locales/ja-JP.yml @@ -165,6 +165,8 @@ flagAsBotDescription: "このアカウントがプログラムによって運用 flagAsCat: "にゃああああああああああああああ!!!!!!!!!!!!" flagAsCatDescription: "にゃにゃにゃ??" flagShowTimelineReplies: "タイムラインにノートへの返信を表示する" +showMediaTimeline: "メディアタイムラインを表示する" +showMediaTimelineInfo: "オンにするとメディアタイムラインを上のバーに表示します。 オフにすると表示しなくなります。" flagShowTimelineRepliesDescription: "オンにすると、タイムラインにユーザーのノート以外にもそのユーザーの他のノートへの返信を表示します。" autoAcceptFollowed: "フォロー中ユーザーからのフォロリクを自動承認" addAccount: "アカウントを追加" @@ -293,6 +295,7 @@ theme: "テーマ" themeForLightMode: "ライトモードで使うテーマ" themeForDarkMode: "ダークモードで使うテーマ" gamingMode: 'ゲーミングモード' +gamingModeInfo: "ボタンなどの装飾をいい感じのグラデーションにします。 激しい点滅などはございません。" light: "ライト" dark: "ダーク" lightThemes: "明るいテーマ" @@ -1742,6 +1745,7 @@ _timelineTutorial: title: "Misskeyの使い方" step1_1: "この画面は「タイムライン」です。{name}に投稿された「ノート」が時系列で表示されます。" step1_2: "タイムラインにはいくつか種類があり、例えば「ホームタイムライン」にはあなたがフォローしている人のノートが流れ、「ローカルタイムライン」には{name}全体のノートが流れます。" + step1_3: "この2つ以外にも、「ソーシャルタイムライン」は ホームTL + ローカルTL のようなもので、 「メディアタイムライン」 には{name}で何かしらのファイル付きで投稿されたノートが流れます。" step2_1: "試しに、何かノートを投稿してみましょう。画面上にある鉛筆マークのボタンを押すとフォームが開きます。" step2_2: "初めてのノートの内容は、あなたの自己紹介や「{name}始めました」などがおすすめです。" step3_1: "投稿できましたか?" diff --git a/package.json b/package.json index fdd36fc200..c6083c4a2b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "misskey", - "version": "2023.9.0-beta.9-prismisskey.1", + "version": "2023.9.0-beta.9-prismisskey.3", "codename": "nasubi", "repository": { "type": "git", diff --git a/packages/frontend/src/pages/settings/general.vue b/packages/frontend/src/pages/settings/general.vue index 709fd2d516..29f0ad9e18 100644 --- a/packages/frontend/src/pages/settings/general.vue +++ b/packages/frontend/src/pages/settings/general.vue @@ -30,7 +30,8 @@ SPDX-License-Identifier: AGPL-3.0-only {{ i18n.ts.showFixedPostForm }} {{ i18n.ts.showFixedPostFormInChannel }} {{ i18n.ts.flagShowTimelineReplies }} - + {{ i18n.ts.showMediaTimeline}} + {{ i18n.ts.add }} @@ -123,7 +124,7 @@ SPDX-License-Identifier: AGPL-3.0-only {{ i18n.ts.cellularWithDataSaver }} {{ i18n.ts.UltimateDataSaver }} {{ i18n.ts.cellularWithUltimateDataSaver }} - {{ i18n.ts.gamingMode }} + {{ i18n.ts.gamingMode }}
@@ -257,7 +258,7 @@ const notificationStackAxis = computed(defaultStore.makeGetterSetter('notificati const showTimelineReplies = computed(defaultStore.makeGetterSetter('showTimelineReplies')); const keepScreenOn = computed(defaultStore.makeGetterSetter('keepScreenOn')); const enableGamingMode = computed(defaultStore.makeGetterSetter('gamingMode')); - +const showMediaTimeline = computed(defaultStore.makeGetterSetter('showMediaTimeline')); watch(lang, () => { miLocalStorage.setItem('lang', lang.value as string); diff --git a/packages/frontend/src/pages/timeline.tutorial.vue b/packages/frontend/src/pages/timeline.tutorial.vue index 66b8e796e5..95b0a79adb 100644 --- a/packages/frontend/src/pages/timeline.tutorial.vue +++ b/packages/frontend/src/pages/timeline.tutorial.vue @@ -21,6 +21,7 @@ SPDX-License-Identifier: AGPL-3.0-only
{{ i18n.t('_timelineTutorial.step1_1', { name: instance.name ?? host }) }}
{{ i18n.t('_timelineTutorial.step1_2', { name: instance.name ?? host }) }}
+
{{ i18n.t('_timelineTutorial.step1_3', { name: instance.name ?? host }) }}
{{ i18n.ts._timelineTutorial.step2_1 }}
diff --git a/packages/frontend/src/pages/timeline.vue b/packages/frontend/src/pages/timeline.vue index d085443290..81a8824697 100644 --- a/packages/frontend/src/pages/timeline.vue +++ b/packages/frontend/src/pages/timeline.vue @@ -40,6 +40,9 @@ const XTutorial = defineAsyncComponent(() => import('./timeline.tutorial.vue')); const isLocalTimelineAvailable = ($i == null && instance.policies.ltlAvailable) || ($i != null && $i.policies.ltlAvailable); const isGlobalTimelineAvailable = ($i == null && instance.policies.gtlAvailable) || ($i != null && $i.policies.gtlAvailable); +const isShowMediaTimeline = defaultStore.state.showMediaTimeline; +console.log(isShowMediaTimeline) + const keymap = { 't': focus, }; @@ -128,12 +131,12 @@ const headerTabs = $computed(() => [{ title: i18n.ts._timelines.local, icon: 'ti ti-planet', iconOnly: true, -}, { - key: 'media', - title: i18n.ts._timelines.media, - icon: 'ti ti-photo', - iconOnly: true, -}, { +}, ...(isShowMediaTimeline ? [{ + key: 'media', + title: i18n.ts._timelines.media, + icon: 'ti ti-photo', + iconOnly: true, +}] : []), { key: 'social', title: i18n.ts._timelines.social, icon: 'ti ti-rocket', diff --git a/packages/frontend/src/store.ts b/packages/frontend/src/store.ts index 27de6d150c..2ba80cd7fd 100644 --- a/packages/frontend/src/store.ts +++ b/packages/frontend/src/store.ts @@ -272,7 +272,7 @@ export const defaultStore = markRaw(new Storage('base', { }, gamingMode: { where: 'device', - default: false, + default: true, }, bannerUrl:{ where: 'device', @@ -350,6 +350,10 @@ export const defaultStore = markRaw(new Storage('base', { where: 'device', default: false, }, + showMediaTimeline:{ + where: 'device', + default: true, + }, reactionsDisplaySize: { where: 'device', default: 'medium' as 'small' | 'medium' | 'large',