Renote confirmation (closes #9051 & #9166)

This commit is contained in:
thatonecalculator 2022-12-01 23:11:11 -08:00
parent 57ef973cdc
commit dd4e2f30be
2 changed files with 38 additions and 22 deletions

View File

@ -89,6 +89,7 @@
- Patron list - Patron list
- Animations respect reduced motion - Animations respect reduced motion
- Obliteration of Ai-chan - Obliteration of Ai-chan
- Undo renote button inside original note
- MissV: [fix Misskey Forkbomb](https://code.vtopia.live/Vtopia/MissV/commit/40b23c070bd4adbb3188c73546c6c625138fb3c1) - MissV: [fix Misskey Forkbomb](https://code.vtopia.live/Vtopia/MissV/commit/40b23c070bd4adbb3188c73546c6c625138fb3c1)
- [Make showing ads optional](https://github.com/misskey-dev/misskey/pull/8996) - [Make showing ads optional](https://github.com/misskey-dev/misskey/pull/8996)
- [Tapping avatar in mobile opens account modal](https://github.com/misskey-dev/misskey/pull/9056) - [Tapping avatar in mobile opens account modal](https://github.com/misskey-dev/misskey/pull/9056)

View File

@ -55,7 +55,10 @@ useTooltip(buttonRef, async (showing) => {
const renote = (viaKeyboard = false, ev?: MouseEvent) => { const renote = (viaKeyboard = false, ev?: MouseEvent) => {
pleaseLogin(); pleaseLogin();
if (defaultStore.state.seperateRenoteQuote) { let buttonActions = [{
text: i18n.ts.renote,
icon: 'ph-repeat-bold ph-lg',
action: () => {
os.api('notes/create', { os.api('notes/create', {
renoteId: props.note.id, renoteId: props.note.id,
visibility: props.note.visibility, visibility: props.note.visibility,
@ -67,17 +70,30 @@ const renote = (viaKeyboard = false, ev?: MouseEvent) => {
const y = rect.top + (el.offsetHeight / 2); const y = rect.top + (el.offsetHeight / 2);
os.popup(Ripple, { x, y }, {}, 'end'); os.popup(Ripple, { x, y }, {}, 'end');
} }
} else { },
os.popupMenu([{ }];
text: i18n.ts.renote, let users;
icon: 'ph-repeat-bold ph-lg', os.api('notes/renotes', {
noteId: props.note.id,
limit: 11,
}).then((renotes) => {
users = renotes.map(x => x.user);
});
const hasRenotedBefore = users.includes($i);
if (hasRenotedBefore) {
buttonActions.push({
text: i18n.ts.unrenote,
icon: 'ph-eraser-bold ph-lg',
action: () => { action: () => {
os.api('notes/create', { os.api('notes/unrenote', {
renoteId: props.note.id, noteId: props.note.id,
visibility: props.note.visibility,
}); });
}, },
}, { });
}
if (!defaultStore.state.seperateRenoteQuote) {
buttonActions.push({
text: i18n.ts.quote, text: i18n.ts.quote,
icon: 'ph-quotes-bold ph-lg', icon: 'ph-quotes-bold ph-lg',
action: () => { action: () => {
@ -85,10 +101,9 @@ const renote = (viaKeyboard = false, ev?: MouseEvent) => {
renote: props.note, renote: props.note,
}); });
}, },
}], buttonRef.value, {
viaKeyboard,
}); });
} }
os.popupMenu(buttonActions, buttonRef.value, { viaKeyboard });
}; };
</script> </script>