mirror of
https://github.com/CherryHQ/cherry-studio.git
synced 2026-01-09 23:10:20 +08:00
* feat(chat/input): allow sending during streaming; remove loading guard - Inputbar: drop loading check; keep Send clickable; right-click to pause - Message/MessageMenubar: render menubar even while streaming - Minor cleanup of unused imports and lints * feat(chat/menubar): one-click regenerate (remove confirm); add empty-context fallback - MessageMenubar: remove Popconfirm; click to regenerate - ApiService: ensure last user message is included if filters empty (avoid messages=[]) - Minor cleanup * feat(chat/ui): decouple generation from sending; enable actions during streaming - MessageGroupMenuBar: add “Retry all” (ReloadOutlined) to retry errored/empty/no-block replies; tooltip via i18n - Context fallback: always include last user message in both messageThunk and ApiService - i18n: add message.group.retry_failed (zh-CN, en-US, ja-JP, ru-RU, zh-TW) - Cleanup: remove unused imports; fix lints * feat(chat/settings): Add confirmation settings for message actions - Add "Confirm before deleting message" and "Confirm before regenerating message" options to the settings page, allowing users to customize action confirmations. - Update internationalization files to support multi-language prompt messages. - Modify the message menu bar to integrate the confirmation logic, enhancing the user experience. * fix(chat/ui): Apply regeneration confirmation to user messages Previously, the "Regenerate" action on user messages would trigger immediately, bypassing the `confirmRegenerateMessage` setting. This behavior was inconsistent with the regeneration logic for assistant messages, which correctly showed a confirmation dialog. This commit wraps the user message's regenerate button in a `Popconfirm` component, conditioned on the `confirmRegenerateMessage` setting. This aligns its behavior with the existing logic for assistant messages. Now, all regeneration actions are uniformly governed by the user's confirmation preference, creating a more consistent and predictable user experience. * fix(ui): Only show 'Retry failed' button when errors exist fix(ui): Conditionally render the 'Retry failed' button The 'Retry failed messages' button in the message group menu bar was previously always visible, even when no messages had failed. - The 'Retry failed' button is now conditionally rendered and will only appear if one or more messages in the group meet the failure criteria. * feat(chat/ui): Add dedicated button to pause message generation Replaced the undiscoverable right-click-to-pause functionality on the send button with a dedicated, visible "Pause" button. This new button only appears during message generation, making the action intuitive and accessible. - Removed `onPause` and context menu logic from `SendMessageButton`. - Added a conditional `CirclePause` button to the `Inputbar` when loading. * feat(settings/migrate): initialize confirm message flags for legacy users - Add migration 138 to default confirmDeleteMessage/confirmRegenerateMessage - No behavior change for fresh installs (uses initialState) fix(format): correct indentation in MessageMenubar fix(settings/migrate): fix persistedReducer verison * fix(ui): resolve React Hook dependency warnings - Remove unnecessary `topic.prompt` dependencies from Message components - Remove `loading` dependency from Inputbar useCallback Resolves ESLint exhaustive-deps warnings and conflicts --------- Co-authored-by: n2yt584v2t4nh7y <117180266+n2yt584v2t4nh7y@users.noreply.github.com> |
||
|---|---|---|
| .. | ||
| main | ||
| preload | ||
| renderer | ||