Attachment Modal: Fix double calendar modal when scheduling (#2823)

This commit is contained in:
Alexander Zinchuk 2023-03-19 22:31:31 -05:00
parent 41c39eab3e
commit e3269baf14
2 changed files with 8 additions and 19 deletions

View File

@ -710,27 +710,15 @@ export async function deleteMessages({
}); });
} }
export async function deleteScheduledMessages({ export function deleteScheduledMessages({
chat, messageIds, chat, messageIds,
}: { }: {
chat: ApiChat; messageIds: number[]; chat: ApiChat; messageIds: number[];
}) { }) {
const result = await invokeRequest( invokeRequest(new GramJs.messages.DeleteScheduledMessages({
new GramJs.messages.DeleteScheduledMessages({ peer: buildInputPeer(chat.id, chat.accessHash),
peer: buildInputPeer(chat.id, chat.accessHash), id: messageIds,
id: messageIds, }));
}),
);
if (!result) {
return;
}
onUpdate({
'@type': 'deleteScheduledMessages',
ids: messageIds,
chatId: chat.id,
});
} }
export async function deleteHistory({ export async function deleteHistory({

View File

@ -106,6 +106,7 @@ import useAttachmentModal from './hooks/useAttachmentModal';
import useGetSelectionRange from '../../../hooks/useGetSelectionRange'; import useGetSelectionRange from '../../../hooks/useGetSelectionRange';
import useDerivedState from '../../../hooks/useDerivedState'; import useDerivedState from '../../../hooks/useDerivedState';
import { useStateRef } from '../../../hooks/useStateRef'; import { useStateRef } from '../../../hooks/useStateRef';
import useEffectWithPrevDeps from '../../../hooks/useEffectWithPrevDeps';
import useDraft from './hooks/useDraft'; import useDraft from './hooks/useDraft';
import DeleteMessageModal from '../../common/DeleteMessageModal.async'; import DeleteMessageModal from '../../common/DeleteMessageModal.async';
@ -886,8 +887,8 @@ const Composer: FC<OwnProps & StateProps> = ({
} }
}, [handleSendAttachments, handleSend, sendInlineBotResult, sendMessage]); }, [handleSendAttachments, handleSend, sendInlineBotResult, sendMessage]);
useEffect(() => { useEffectWithPrevDeps(([prevContentToBeScheduled]) => {
if (contentToBeScheduled) { if (contentToBeScheduled && contentToBeScheduled !== prevContentToBeScheduled) {
requestCalendar((scheduledAt) => { requestCalendar((scheduledAt) => {
handleMessageSchedule(contentToBeScheduled, scheduledAt); handleMessageSchedule(contentToBeScheduled, scheduledAt);
}); });