diff --git a/VERSION.properties b/VERSION.properties index d978ef40..59118614 100644 --- a/VERSION.properties +++ b/VERSION.properties @@ -1,2 +1,2 @@ -client.version=1.12.10 +client.version=1.12.11 server.version=1.10.4 diff --git a/shine-UI/js/pages/chat-view.js b/shine-UI/js/pages/chat-view.js index 746a1999..f3d7f3e9 100644 --- a/shine-UI/js/pages/chat-view.js +++ b/shine-UI/js/pages/chat-view.js @@ -1355,6 +1355,14 @@ export function render({ navigate, route, chrome }) { const finalText = editing ? `${String(editing?.prefixText || '')}${text}` : `${replying ? buildDmReplyTechBlock({ baseKey: replying.baseKey }) : ''}${text}`; + + // A new outgoing message immediately ends the visual "Новые сообщения" section. + // Do this before awaiting the server: the divider is a UI-session marker, not a + // delivery/read receipt indicator. Editing an existing message does not clear it. + if (!editing) { + hideUnreadSeparator({ rerender: false }); + } + const tempId = editing ? '' : addOutgoingPendingMessage(chatId, text); renderChatLog({ scrollMode: 'latest', markAsRead: false }); scrollToLatestMessageSmart(log, { smoothIfNearBottom: true }); @@ -1392,13 +1400,6 @@ export function render({ navigate, route, chrome }) { deliveryState: result?.deliveryState || 'accepted', }); - // In a DM the "Новые сообщения" divider stays fixed for the current open - // chat session and disappears only after a successfully sent NEW message. - // Editing an existing message must not clear the divider. - if (!editing) { - hideUnreadSeparator({ rerender: false }); - } - if (editing) { cancelEditMode({ restoreDraft: true }); } else if (replying) {