From 39f731804812d2e325c8b5c7c9077ff9c4835bc4 Mon Sep 17 00:00:00 2001 From: syuilo Date: Sat, 4 Nov 2023 13:58:41 +0900 Subject: [PATCH 01/22] tweak MkPullToRefresh --- packages/frontend/src/components/MkPullToRefresh.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/frontend/src/components/MkPullToRefresh.vue b/packages/frontend/src/components/MkPullToRefresh.vue index 64c4d6e91d..00c1d3808e 100644 --- a/packages/frontend/src/components/MkPullToRefresh.vue +++ b/packages/frontend/src/components/MkPullToRefresh.vue @@ -32,8 +32,8 @@ const SCROLL_STOP = 10; const MAX_PULL_DISTANCE = Infinity; const FIRE_THRESHOLD = 230; const RELEASE_TRANSITION_DURATION = 200; -const PULL_BRAKE_BASE = 2; -const PULL_BRAKE_FACTOR = 200; +const PULL_BRAKE_BASE = 1.5; +const PULL_BRAKE_FACTOR = 170; let isPullStart = $ref(false); let isPullEnd = $ref(false); From b92b70459264b09ccf8b17fabc992e77e20df0fd Mon Sep 17 00:00:00 2001 From: syuilo Date: Sat, 4 Nov 2023 14:37:47 +0900 Subject: [PATCH 02/22] fix control panel navigation --- packages/frontend/src/pages/admin/index.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/frontend/src/pages/admin/index.vue b/packages/frontend/src/pages/admin/index.vue index 2bb1e80c18..b304edbf57 100644 --- a/packages/frontend/src/pages/admin/index.vue +++ b/packages/frontend/src/pages/admin/index.vue @@ -118,7 +118,7 @@ const menuDef = $computed(() => [{ }, { icon: 'ti ti-sparkles', text: i18n.ts.avatarDecorations, - to: '/avatar-decorations', + to: '/admin/avatar-decorations', active: currentPage?.route.name === 'avatarDecorations', }, { icon: 'ti ti-whirl', From e88a9702d06ff0d3fe4d8fc3099136d5a1b4695d Mon Sep 17 00:00:00 2001 From: syuilo Date: Sat, 4 Nov 2023 14:41:01 +0900 Subject: [PATCH 03/22] Update CHANGELOG.md --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6f29eaf8d5..0ad55752b1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -59,6 +59,7 @@ - Fix: 11以上されているリアクションにおいてツールチップで示されるリアクション数が本来よりも1多い問題を修正 #12174 - Fix: サイレンス状態で公開範囲のパブリックを選択できてしまう問題を修正 #12224 - Fix: In deck layout, replies option is not saved after refresh +- Note: アップデート後、サウンドに関する設定が初期化されます ### Server - Feat: Registry APIがサードパーティから利用可能になりました From ca1cda0db0309804c282473939538e2a3d9e940f Mon Sep 17 00:00:00 2001 From: syuilo Date: Sat, 4 Nov 2023 16:44:14 +0900 Subject: [PATCH 04/22] enhance(frontend): tweak settings page --- packages/frontend/src/pages/settings/general.vue | 4 +--- packages/frontend/src/pages/settings/other.vue | 2 ++ 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/frontend/src/pages/settings/general.vue b/packages/frontend/src/pages/settings/general.vue index d96c984688..06d3789829 100644 --- a/packages/frontend/src/pages/settings/general.vue +++ b/packages/frontend/src/pages/settings/general.vue @@ -29,7 +29,6 @@ SPDX-License-Identifier: AGPL-3.0-only
{{ i18n.ts.showFixedPostForm }} {{ i18n.ts.showFixedPostFormInChannel }} - {{ i18n.ts.withRepliesByDefaultForNewlyFollowed }} @@ -51,7 +50,6 @@ SPDX-License-Identifier: AGPL-3.0-only {{ i18n.ts.enableAnimatedMfm }} {{ i18n.ts.showGapBetweenNotesInTimeline }} {{ i18n.ts.loadRawImages }} - {{ i18n.ts.useReactionPickerForContextMenu }} @@ -151,6 +149,7 @@ SPDX-License-Identifier: AGPL-3.0-only
{{ i18n.ts.openImageInNewTab }} + {{ i18n.ts.useReactionPickerForContextMenu }} {{ i18n.ts.enableInfiniteScroll }} {{ i18n.ts.keepScreenOn }} {{ i18n.ts.disableStreamingTimeline }} @@ -255,7 +254,6 @@ const mediaListWithOneImageAppearance = computed(defaultStore.makeGetterSetter(' const notificationPosition = computed(defaultStore.makeGetterSetter('notificationPosition')); const notificationStackAxis = computed(defaultStore.makeGetterSetter('notificationStackAxis')); const keepScreenOn = computed(defaultStore.makeGetterSetter('keepScreenOn')); -const defaultWithReplies = computed(defaultStore.makeGetterSetter('defaultWithReplies')); const disableStreamingTimeline = computed(defaultStore.makeGetterSetter('disableStreamingTimeline')); const useGroupedNotifications = computed(defaultStore.makeGetterSetter('useGroupedNotifications')); diff --git a/packages/frontend/src/pages/settings/other.vue b/packages/frontend/src/pages/settings/other.vue index 43a8632130..36666b9c20 100644 --- a/packages/frontend/src/pages/settings/other.vue +++ b/packages/frontend/src/pages/settings/other.vue @@ -76,6 +76,7 @@ SPDX-License-Identifier: AGPL-3.0-only
+ {{ i18n.ts.withRepliesByDefaultForNewlyFollowed }} {{ i18n.ts.showRepliesToOthersInTimelineAll }} {{ i18n.ts.hideRepliesToOthersInTimelineAll }}
@@ -102,6 +103,7 @@ import FormSection from '@/components/form/section.vue'; const reportError = computed(defaultStore.makeGetterSetter('reportError')); const enableCondensedLineForAcct = computed(defaultStore.makeGetterSetter('enableCondensedLineForAcct')); const devMode = computed(defaultStore.makeGetterSetter('devMode')); +const defaultWithReplies = computed(defaultStore.makeGetterSetter('defaultWithReplies')); function onChangeInjectFeaturedNote(v) { os.api('i/update', { From 5e9f6a90df9c999d36283d2ba9eb8e23ccfd7d7b Mon Sep 17 00:00:00 2001 From: syuilo Date: Sat, 4 Nov 2023 18:27:22 +0900 Subject: [PATCH 05/22] =?UTF-8?q?enhance(frontend):=20=E3=83=8E=E3=83=BC?= =?UTF-8?q?=E3=83=88=E5=86=85=E3=81=AE=E3=82=AB=E3=82=B9=E3=82=BF=E3=83=A0?= =?UTF-8?q?=E7=B5=B5=E6=96=87=E5=AD=97=E3=82=92=E3=82=AF=E3=83=AA=E3=83=83?= =?UTF-8?q?=E3=82=AF=E3=81=99=E3=82=8B=E3=81=93=E3=81=A8=E3=81=A7=E3=80=81?= =?UTF-8?q?=E3=82=B3=E3=83=94=E3=83=BC=E3=81=8A=E3=82=88=E3=81=B3=E3=83=AA?= =?UTF-8?q?=E3=82=A2=E3=82=AF=E3=82=B7=E3=83=A7=E3=83=B3=E3=81=8C=E3=81=A7?= =?UTF-8?q?=E3=81=8D=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 1 + locales/index.d.ts | 1 + locales/ja-JP.yml | 1 + packages/frontend/src/components/MkNote.vue | 22 ++++++++-- .../src/components/MkNoteDetailed.vue | 6 +-- .../frontend/src/components/MkNoteSimple.vue | 2 +- .../frontend/src/components/MkNoteSub.vue | 2 +- .../src/components/MkSubNoteContent.vue | 2 +- .../frontend/src/components/MkUserInfo.vue | 2 +- .../frontend/src/components/MkUserPopup.vue | 2 +- .../src/components/MkUserSetupDialog.User.vue | 2 +- .../src/components/global/MkCustomEmoji.vue | 43 ++++++++++++++++++- .../global/MkMisskeyFlavoredMarkdown.ts | 5 ++- .../src/components/page/page.text.vue | 2 +- packages/frontend/src/pages/channel.vue | 2 +- packages/frontend/src/pages/clip.vue | 2 +- packages/frontend/src/pages/user/home.vue | 4 +- .../frontend/src/pages/welcome.timeline.vue | 2 +- 18 files changed, 82 insertions(+), 21 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0ad55752b1..4038755124 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -47,6 +47,7 @@ - Enhance: プラグインで`Plugin:register_note_view_interruptor`を用いてnoteの代わりにnullを返却することでノートを非表示にできるようになりました - Enhance: AiScript関数`Mk:nyaize()`が追加されました - Enhance: 情報→ツール はナビゲーションバーにツールとして独立した項目になりました +- Enhance: ノート内のカスタム絵文字をクリックすることで、コピーおよびリアクションができるように - Enhance: その他細かなブラッシュアップ - Fix: 投稿フォームでのユーザー変更がプレビューに反映されない問題を修正 - Fix: ユーザーページの ノート > ファイル付き タブにリプライが表示されてしまう diff --git a/locales/index.d.ts b/locales/index.d.ts index 50b11acc06..aedaaa9f7c 100644 --- a/locales/index.d.ts +++ b/locales/index.d.ts @@ -1160,6 +1160,7 @@ export interface Locale { "useGroupedNotifications": string; "signupPendingError": string; "cwNotationRequired": string; + "doReaction": string; "_announcement": { "forExistingUsers": string; "forExistingUsersDescription": string; diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml index de4e8ce2b3..6ecebfc393 100644 --- a/locales/ja-JP.yml +++ b/locales/ja-JP.yml @@ -1157,6 +1157,7 @@ disableStreamingTimeline: "タイムラインのリアルタイム更新を無 useGroupedNotifications: "通知をグルーピングして表示する" signupPendingError: "メールアドレスの確認中に問題が発生しました。リンクの有効期限が切れている可能性があります。" cwNotationRequired: "「内容を隠す」がオンの場合は注釈の記述が必要です。" +doReaction: "リアクションする" _announcement: forExistingUsers: "既存ユーザーのみ" diff --git a/packages/frontend/src/components/MkNote.vue b/packages/frontend/src/components/MkNote.vue index 30a68f38f2..0ae3423a21 100644 --- a/packages/frontend/src/components/MkNote.vue +++ b/packages/frontend/src/components/MkNote.vue @@ -53,19 +53,28 @@ SPDX-License-Identifier: AGPL-3.0-only

- +

({{ i18n.ts.private }}) - +
{{ i18n.t('translatedFrom', { x: translation.sourceLang }) }}: - +
@@ -242,6 +251,13 @@ const keymap = { 's': () => showContent.value !== showContent.value, }; +provide('react', (reaction: string) => { + os.api('notes/reactions/create', { + noteId: appearNote.id, + reaction: reaction, + }); +}); + if (props.mock) { watch(() => props.note, (to) => { note = deepClone(to); diff --git a/packages/frontend/src/components/MkNoteDetailed.vue b/packages/frontend/src/components/MkNoteDetailed.vue index 9e9b1035d7..ff2941344e 100644 --- a/packages/frontend/src/components/MkNoteDetailed.vue +++ b/packages/frontend/src/components/MkNoteDetailed.vue @@ -67,19 +67,19 @@ SPDX-License-Identifier: AGPL-3.0-only

- +

({{ i18n.ts.private }}) - + RN:
{{ i18n.t('translatedFrom', { x: translation.sourceLang }) }}: - +
diff --git a/packages/frontend/src/components/MkNoteSimple.vue b/packages/frontend/src/components/MkNoteSimple.vue index dc401a7ecb..28b00af246 100644 --- a/packages/frontend/src/components/MkNoteSimple.vue +++ b/packages/frontend/src/components/MkNoteSimple.vue @@ -10,7 +10,7 @@ SPDX-License-Identifier: AGPL-3.0-only

- +

diff --git a/packages/frontend/src/components/MkNoteSub.vue b/packages/frontend/src/components/MkNoteSub.vue index 3cc8767007..f61b963d9b 100644 --- a/packages/frontend/src/components/MkNoteSub.vue +++ b/packages/frontend/src/components/MkNoteSub.vue @@ -12,7 +12,7 @@ SPDX-License-Identifier: AGPL-3.0-only

- +

diff --git a/packages/frontend/src/components/MkSubNoteContent.vue b/packages/frontend/src/components/MkSubNoteContent.vue index 51dabee161..e9f2b838d2 100644 --- a/packages/frontend/src/components/MkSubNoteContent.vue +++ b/packages/frontend/src/components/MkSubNoteContent.vue @@ -9,7 +9,7 @@ SPDX-License-Identifier: AGPL-3.0-only ({{ i18n.ts.private }}) ({{ i18n.ts.deleted }}) - + RN: ...
diff --git a/packages/frontend/src/components/MkUserInfo.vue b/packages/frontend/src/components/MkUserInfo.vue index c13ef60f3b..eaebbf03e7 100644 --- a/packages/frontend/src/components/MkUserInfo.vue +++ b/packages/frontend/src/components/MkUserInfo.vue @@ -14,7 +14,7 @@ SPDX-License-Identifier: AGPL-3.0-only {{ i18n.ts.followsYou }}
- +
{{ i18n.ts.noAccountDescription }}
diff --git a/packages/frontend/src/components/MkUserPopup.vue b/packages/frontend/src/components/MkUserPopup.vue index bcba4196b5..20eb9b3e93 100644 --- a/packages/frontend/src/components/MkUserPopup.vue +++ b/packages/frontend/src/components/MkUserPopup.vue @@ -27,7 +27,7 @@ SPDX-License-Identifier: AGPL-3.0-only
- +
{{ i18n.ts.noAccountDescription }}
diff --git a/packages/frontend/src/components/MkUserSetupDialog.User.vue b/packages/frontend/src/components/MkUserSetupDialog.User.vue index 746781d71f..4fbaf75454 100644 --- a/packages/frontend/src/components/MkUserSetupDialog.User.vue +++ b/packages/frontend/src/components/MkUserSetupDialog.User.vue @@ -13,7 +13,7 @@ SPDX-License-Identifier: AGPL-3.0-only
- +
{{ i18n.ts.noAccountDescription }}
diff --git a/packages/frontend/src/components/global/MkCustomEmoji.vue b/packages/frontend/src/components/global/MkCustomEmoji.vue index 063b122f8b..1e17bab849 100644 --- a/packages/frontend/src/components/global/MkCustomEmoji.vue +++ b/packages/frontend/src/components/global/MkCustomEmoji.vue @@ -5,14 +5,27 @@ SPDX-License-Identifier: AGPL-3.0-only