summaryrefslogtreecommitdiff
path: root/packages/frontend/src/components/MkNoteDetailed.vue
diff options
context:
space:
mode:
authorKhsmty <me@khsmty.com>2023-03-01 14:55:57 +0900
committerGitHub <noreply@github.com>2023-03-01 14:55:57 +0900
commitc34e7e6e08c66fb4ed539c4d4f967af3843dca7b (patch)
treef633ff4f557eb79de213290f951a99f312b0ee75 /packages/frontend/src/components/MkNoteDetailed.vue
parent:art: (diff)
downloadmisskey-c34e7e6e08c66fb4ed539c4d4f967af3843dca7b.tar.gz
misskey-c34e7e6e08c66fb4ed539c4d4f967af3843dca7b.tar.bz2
misskey-c34e7e6e08c66fb4ed539c4d4f967af3843dca7b.zip
enhance(client): Renote した時の表示をリップルエフェクトと toast に (#10116)
* enhance(client): Renote した時の表示を toast に * fix: lint エラー * enhance(client): Renote した時の表示をリップルエフェクトに * toast も追加 * rippleeffect のタイミング変更 * toast の位置を header に被らないように
Diffstat (limited to 'packages/frontend/src/components/MkNoteDetailed.vue')
-rw-r--r--packages/frontend/src/components/MkNoteDetailed.vue25
1 files changed, 23 insertions, 2 deletions
diff --git a/packages/frontend/src/components/MkNoteDetailed.vue b/packages/frontend/src/components/MkNoteDetailed.vue
index 2eebe999a5..f5f4a2afc1 100644
--- a/packages/frontend/src/components/MkNoteDetailed.vue
+++ b/packages/frontend/src/components/MkNoteDetailed.vue
@@ -161,6 +161,7 @@ import { deepClone } from '@/scripts/clone';
import { useTooltip } from '@/scripts/use-tooltip';
import { claimAchievement } from '@/scripts/achievements';
import { MenuItem } from '@/types/menu';
+import MkRippleEffect from '@/components/MkRippleEffect.vue';
const props = defineProps<{
note: misskey.entities.Note;
@@ -250,9 +251,19 @@ function renote(viaKeyboard = false) {
text: i18n.ts.inChannelRenote,
icon: 'ti ti-repeat',
action: () => {
- os.apiWithDialog('notes/create', {
+ const el = renoteButton.value as HTMLElement | null | undefined;
+ if (el) {
+ const rect = el.getBoundingClientRect();
+ const x = rect.left + (el.offsetWidth / 2);
+ const y = rect.top + (el.offsetHeight / 2);
+ os.popup(MkRippleEffect, { x, y }, {}, 'end');
+ }
+
+ os.api('notes/create', {
renoteId: appearNote.id,
channelId: appearNote.channelId,
+ }).then(() => {
+ os.toast(i18n.ts.renoted);
});
},
}, {
@@ -271,8 +282,18 @@ function renote(viaKeyboard = false) {
text: i18n.ts.renote,
icon: 'ti ti-repeat',
action: () => {
- os.apiWithDialog('notes/create', {
+ const el = renoteButton.value as HTMLElement | null | undefined;
+ if (el) {
+ const rect = el.getBoundingClientRect();
+ const x = rect.left + (el.offsetWidth / 2);
+ const y = rect.top + (el.offsetHeight / 2);
+ os.popup(MkRippleEffect, { x, y }, {}, 'end');
+ }
+
+ os.api('notes/create', {
renoteId: appearNote.id,
+ }).then(() => {
+ os.toast(i18n.ts.renoted);
});
},
}, {