diff --git a/CHANGELOG.md b/CHANGELOG.md index 67aa45c8c9..39d211eaed 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -22,9 +22,11 @@ - Feat: プラグイン・テーマを外部サイトから直接インストールできるようになりました - 外部サイトでの実装が必要です。詳細は Misskey Hub をご覧ください https://misskey-hub.net/docs/advanced/publish-on-your-website.html +- Fix: 投稿フォームでのユーザー変更がプレビューに反映されない問題を修正 ### Server - Fix: リストTLに自分のフォロワー限定投稿が含まれない問題を修正 +- Fix: ローカルタイムラインに投稿者自身の投稿への返信が含まれない問題を修正 ## 2023.10.2 diff --git a/locales/index.d.ts b/locales/index.d.ts index a73d064775..899b4bc932 100644 --- a/locales/index.d.ts +++ b/locales/index.d.ts @@ -1185,6 +1185,7 @@ export interface Locale { "detach": string; "angle": string; "flip": string; + "showAvatarDecorations": string; "_announcement": { "forExistingUsers": string; "forExistingUsersDescription": string; diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml index b5f909440b..6b07c45975 100644 --- a/locales/ja-JP.yml +++ b/locales/ja-JP.yml @@ -1182,6 +1182,7 @@ attach: "付ける" detach: "外す" angle: "角度" flip: "反転" +showAvatarDecorations: "アイコンのデコレーションを表示" _announcement: forExistingUsers: "既存ユーザーのみ" diff --git a/package.json b/package.json index 52f0003a97..fd2847e2ee 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "misskey", - "version": "2023.11.0-beta.1-prismisskey.2", + "version": "2023.11.0-beta.2", "codename": "nasubi", "repository": { "type": "git", diff --git a/packages/backend/src/server/api/endpoints/notes/local-timeline.ts b/packages/backend/src/server/api/endpoints/notes/local-timeline.ts index 3b6c93fdf9..4b9882e834 100644 --- a/packages/backend/src/server/api/endpoints/notes/local-timeline.ts +++ b/packages/backend/src/server/api/endpoints/notes/local-timeline.ts @@ -120,7 +120,7 @@ export default class extends Endpoint { // eslint- if (me && (note.userId === me.id)) { return true; } - if (!ps.withReplies && note.replyId && (me == null || note.replyUserId !== me.id)) return false; + if (!ps.withReplies && note.replyId && note.replyUserId !== note.userId && (me == null || note.replyUserId !== me.id)) return false; if (me && isUserRelated(note, userIdsWhoBlockingMe)) return false; if (me && isUserRelated(note, userIdsWhoMeMuting)) return false; if (note.renoteId) { diff --git a/packages/backend/test/e2e/timelines.ts b/packages/backend/test/e2e/timelines.ts index 974d2f6820..760bb8a574 100644 --- a/packages/backend/test/e2e/timelines.ts +++ b/packages/backend/test/e2e/timelines.ts @@ -526,6 +526,20 @@ describe('Timelines', () => { assert.strictEqual(res.body.some((note: any) => note.id === carolNote.id), true); }); + test.concurrent('他人のその人自身への返信が含まれる', async () => { + const [alice, bob] = await Promise.all([signup(), signup()]); + + const bobNote1 = await post(bob, { text: 'hi' }); + const bobNote2 = await post(bob, { text: 'hi', replyId: bobNote1.id }); + + await waitForPushToTl(); + + const res = await api('/notes/local-timeline', { limit: 100 }, alice); + + assert.strictEqual(res.body.some((note: any) => note.id === bobNote1.id), true); + assert.strictEqual(res.body.some((note: any) => note.id === bobNote2.id), true); + }); + test.concurrent('チャンネル投稿が含まれない', async () => { const [alice, bob] = await Promise.all([signup(), signup()]); diff --git a/packages/frontend/src/components/MkNotePreview.vue b/packages/frontend/src/components/MkNotePreview.vue index fc6ea89085..923c240cf0 100644 --- a/packages/frontend/src/components/MkNotePreview.vue +++ b/packages/frontend/src/components/MkNotePreview.vue @@ -5,14 +5,14 @@ SPDX-License-Identifier: AGPL-3.0-only @@ -139,6 +146,15 @@ async function reloadAsk() { unisonReload(); } +async function updateRepliesAll(withReplies: boolean) { + const { canceled } = os.confirm({ + type: 'warning', + text: withReplies ? i18n.ts.confirmShowRepliesAll : i18n.ts.confirmHideRepliesAll, + }); + if (canceled) return; + await os.api('following/update-all', { withReplies }); +} + watch([ enableCondensedLineForAcct, ], async () => { diff --git a/packages/frontend/src/pages/settings/profile.avatar-decoration-dialog.vue b/packages/frontend/src/pages/settings/profile.avatar-decoration-dialog.vue index c4bdf4a49b..4d571bc9ba 100644 --- a/packages/frontend/src/pages/settings/profile.avatar-decoration-dialog.vue +++ b/packages/frontend/src/pages/settings/profile.avatar-decoration-dialog.vue @@ -17,7 +17,7 @@ SPDX-License-Identifier: AGPL-3.0-only
{{ decoration.name }}
- +
diff --git a/packages/frontend/src/pages/settings/profile.vue b/packages/frontend/src/pages/settings/profile.vue index 8d9c3cf730..2a0b678ed1 100644 --- a/packages/frontend/src/pages/settings/profile.vue +++ b/packages/frontend/src/pages/settings/profile.vue @@ -7,7 +7,7 @@ SPDX-License-Identifier: AGPL-3.0-only
- + {{ i18n.ts._profile.changeAvatar }}
{{ i18n.ts._profile.changeBanner }} @@ -95,7 +95,7 @@ SPDX-License-Identifier: AGPL-3.0-only @click="openDecoration(avatarDecoration)" >
{{ avatarDecoration.name }}
- +
diff --git a/packages/frontend/src/store.ts b/packages/frontend/src/store.ts index d4dbb99555..5dc5324aff 100644 --- a/packages/frontend/src/store.ts +++ b/packages/frontend/src/store.ts @@ -332,6 +332,10 @@ export const defaultStore = markRaw(new Storage('base', { where: 'device', default: false, }, + showAvatarDecorations: { + where: 'device', + default: true, + }, postFormWithHashtags: { where: 'device', default: false, diff --git a/packages/frontend/src/ui/_common_/navbar.vue b/packages/frontend/src/ui/_common_/navbar.vue index 3829d251f7..54d641aa9f 100644 --- a/packages/frontend/src/ui/_common_/navbar.vue +++ b/packages/frontend/src/ui/_common_/navbar.vue @@ -87,9 +87,9 @@ SPDX-License-Identifier: AGPL-3.0-only