new UI for edit

This commit is contained in:
Will Li 2025-07-02 16:04:08 -07:00
parent 1f01e576fd
commit 10ca937678
19 changed files with 118 additions and 43 deletions

View file

@ -67,18 +67,26 @@ export const webviewMessageHandler = async (
operation: "delete" | "edit",
editedContent?: string,
): Promise<void> => {
// Different visual order of options based on operation type
const options =
operation === "edit"
? [
t("common:confirmation.edit_this_and_delete_subsequent"),
t("common:confirmation.edit_just_this_message"),
]
: [
t("common:confirmation.delete_just_this_message"),
t("common:confirmation.delete_this_and_subsequent"),
]
const answer = await vscode.window.showInformationMessage(
t("common:confirmation.delete_message"),
operation === "edit" ? t("common:confirmation.edit_message") : t("common:confirmation.delete_message"),
{ modal: true },
t("common:confirmation.just_this_message"),
t("common:confirmation.this_and_subsequent"),
...options,
)
if (
(answer === t("common:confirmation.just_this_message") ||
answer === t("common:confirmation.this_and_subsequent")) &&
provider.getCurrentCline()
) {
// Only proceed if user selected one of the options and we have a current cline
if (answer && options.includes(answer) && provider.getCurrentCline()) {
const timeCutoff = messageTs - 1000 // 1 second buffer before the message
const currentCline = provider.getCurrentCline()!
@ -92,7 +100,12 @@ export const webviewMessageHandler = async (
try {
const { historyItem } = await provider.getTaskWithId(currentCline.taskId)
if (answer === t("common:confirmation.just_this_message")) {
// Check if user selected the "just this message" option
// For delete: options[0], for edit: options[1]
if (
(operation === "delete" && answer === options[0]) ||
(operation === "edit" && answer === options[1])
) {
// Find the next user message first
const nextUserMessage = currentCline.clineMessages
.slice(messageIndex + 1)
@ -132,7 +145,12 @@ export const webviewMessageHandler = async (
)
}
}
} else if (answer === t("common:confirmation.this_and_subsequent")) {
} else if (
// Check if user selected the "this and subsequent" option
// For delete: options[1], for edit: options[0]
(operation === "delete" && answer === options[1]) ||
(operation === "edit" && answer === options[0])
) {
// Delete this message and all that follow
await currentCline.overwriteClineMessages(currentCline.clineMessages.slice(0, messageIndex))

View file

@ -23,8 +23,11 @@
"delete_config_profile": "Estàs segur que vols eliminar aquest perfil de configuració?",
"delete_custom_mode": "Estàs segur que vols eliminar aquest mode personalitzat?",
"delete_message": "Què vols eliminar?",
"just_this_message": "Només aquest missatge",
"this_and_subsequent": "Aquest i tots els missatges posteriors"
"edit_message": "Eliminar tots els missatges després d'aquest?",
"delete_just_this_message": "Només aquest missatge",
"edit_just_this_message": "No, només editar aquest",
"delete_this_and_subsequent": "Aquest i tots els missatges posteriors",
"edit_this_and_delete_subsequent": "Sí"
},
"errors": {
"invalid_data_uri": "Format d'URI de dades no vàlid",

View file

@ -19,8 +19,11 @@
"delete_config_profile": "Möchtest du dieses Konfigurationsprofil wirklich löschen?",
"delete_custom_mode": "Möchtest du diesen benutzerdefinierten Modus wirklich löschen?",
"delete_message": "Was möchtest du löschen?",
"just_this_message": "Nur diese Nachricht",
"this_and_subsequent": "Diese und alle nachfolgenden Nachrichten"
"edit_message": "Alle Nachrichten nach dieser löschen?",
"delete_just_this_message": "Nur diese Nachricht",
"edit_just_this_message": "Nein, nur diese bearbeiten",
"delete_this_and_subsequent": "Diese und alle nachfolgenden Nachrichten",
"edit_this_and_delete_subsequent": "Ja"
},
"errors": {
"invalid_data_uri": "Ungültiges Daten-URI-Format",

View file

@ -19,8 +19,11 @@
"delete_config_profile": "Are you sure you want to delete this configuration profile?",
"delete_custom_mode": "Are you sure you want to delete this custom mode?",
"delete_message": "What would you like to delete?",
"just_this_message": "Just this message",
"this_and_subsequent": "This and all subsequent messages"
"edit_message": "Delete all messages after this one?",
"delete_just_this_message": "Just this message",
"edit_just_this_message": "No, just edit this one",
"delete_this_and_subsequent": "This and all subsequent messages",
"edit_this_and_delete_subsequent": "Yes"
},
"errors": {
"invalid_data_uri": "Invalid data URI format",

View file

@ -19,8 +19,11 @@
"delete_config_profile": "¿Estás seguro de que deseas eliminar este perfil de configuración?",
"delete_custom_mode": "¿Estás seguro de que deseas eliminar este modo personalizado?",
"delete_message": "¿Qué deseas eliminar?",
"just_this_message": "Solo este mensaje",
"this_and_subsequent": "Este y todos los mensajes posteriores"
"edit_message": "¿Eliminar todos los mensajes posteriores a este?",
"delete_just_this_message": "Solo este mensaje",
"edit_just_this_message": "No, solo editar este",
"delete_this_and_subsequent": "Este y todos los mensajes posteriores",
"edit_this_and_delete_subsequent": "Sí"
},
"errors": {
"invalid_data_uri": "Formato de URI de datos no válido",

View file

@ -19,8 +19,11 @@
"delete_config_profile": "Êtes-vous sûr de vouloir supprimer ce profil de configuration ?",
"delete_custom_mode": "Êtes-vous sûr de vouloir supprimer ce mode personnalisé ?",
"delete_message": "Que souhaitez-vous supprimer ?",
"just_this_message": "Uniquement ce message",
"this_and_subsequent": "Ce message et tous les messages suivants"
"edit_message": "Supprimer tous les messages après celui-ci ?",
"delete_just_this_message": "Uniquement ce message",
"edit_just_this_message": "Non, modifier uniquement celui-ci",
"delete_this_and_subsequent": "Ce message et tous les messages suivants",
"edit_this_and_delete_subsequent": "Oui"
},
"errors": {
"invalid_data_uri": "Format d'URI de données invalide",

View file

@ -19,8 +19,11 @@
"delete_config_profile": "क्या आप वाकई इस कॉन्फ़िगरेशन प्रोफ़ाइल को हटाना चाहते हैं?",
"delete_custom_mode": "क्या आप वाकई इस कस्टम मोड को हटाना चाहते हैं?",
"delete_message": "आप क्या हटाना चाहते हैं?",
"just_this_message": "सिर्फ यह संदेश",
"this_and_subsequent": "यह और सभी बाद के संदेश"
"edit_message": "इसके बाद के सभी संदेशों को हटाएं?",
"delete_just_this_message": "सिर्फ यह संदेश",
"edit_just_this_message": "नहीं, केवल इसे संपादित करें",
"delete_this_and_subsequent": "यह और सभी बाद के संदेश",
"edit_this_and_delete_subsequent": "हां"
},
"errors": {
"invalid_data_uri": "अमान्य डेटा URI फॉर्मेट",

View file

@ -19,8 +19,11 @@
"delete_config_profile": "Apakah kamu yakin ingin menghapus profil konfigurasi ini?",
"delete_custom_mode": "Apakah kamu yakin ingin menghapus mode kustom ini?",
"delete_message": "Apa yang ingin kamu hapus?",
"just_this_message": "Hanya pesan ini",
"this_and_subsequent": "Ini dan semua pesan selanjutnya"
"edit_message": "Hapus semua pesan setelah ini?",
"delete_just_this_message": "Hanya pesan ini",
"edit_just_this_message": "Tidak, hanya edit yang ini",
"delete_this_and_subsequent": "Ini dan semua pesan selanjutnya",
"edit_this_and_delete_subsequent": "Ya"
},
"errors": {
"invalid_data_uri": "Format data URI tidak valid",

View file

@ -19,8 +19,11 @@
"delete_config_profile": "Sei sicuro di voler eliminare questo profilo di configurazione?",
"delete_custom_mode": "Sei sicuro di voler eliminare questa modalità personalizzata?",
"delete_message": "Cosa desideri eliminare?",
"just_this_message": "Solo questo messaggio",
"this_and_subsequent": "Questo e tutti i messaggi successivi"
"edit_message": "Eliminare tutti i messaggi dopo questo?",
"delete_just_this_message": "Solo questo messaggio",
"edit_just_this_message": "No, modifica solo questo",
"delete_this_and_subsequent": "Questo e tutti i messaggi successivi",
"edit_this_and_delete_subsequent": "Sì"
},
"errors": {
"invalid_data_uri": "Formato URI dati non valido",

View file

@ -19,8 +19,11 @@
"delete_config_profile": "この設定プロファイルを削除してもよろしいですか?",
"delete_custom_mode": "このカスタムモードを削除してもよろしいですか?",
"delete_message": "何を削除しますか?",
"just_this_message": "このメッセージのみ",
"this_and_subsequent": "これ以降のすべてのメッセージ"
"edit_message": "これ以降のメッセージをすべて削除しますか?",
"delete_just_this_message": "このメッセージのみ",
"edit_just_this_message": "いいえ、これだけを編集",
"delete_this_and_subsequent": "これ以降のすべてのメッセージ",
"edit_this_and_delete_subsequent": "はい"
},
"errors": {
"invalid_data_uri": "データURIフォーマットが無効です",

View file

@ -19,8 +19,11 @@
"delete_config_profile": "이 구성 프로필을 삭제하시겠습니까?",
"delete_custom_mode": "이 사용자 지정 모드를 삭제하시겠습니까?",
"delete_message": "무엇을 삭제하시겠습니까?",
"just_this_message": "이 메시지만",
"this_and_subsequent": "이 메시지와 모든 후속 메시지"
"edit_message": "이 메시지 이후의 모든 메시지를 삭제하시겠습니까?",
"delete_just_this_message": "이 메시지만",
"edit_just_this_message": "아니요, 이것만 편집",
"delete_this_and_subsequent": "이 메시지와 모든 후속 메시지",
"edit_this_and_delete_subsequent": "예"
},
"errors": {
"invalid_data_uri": "잘못된 데이터 URI 형식",

View file

@ -19,8 +19,11 @@
"delete_config_profile": "Weet je zeker dat je dit configuratieprofiel wilt verwijderen?",
"delete_custom_mode": "Weet je zeker dat je deze aangepaste modus wilt verwijderen?",
"delete_message": "Wat wil je verwijderen?",
"just_this_message": "Alleen dit bericht",
"this_and_subsequent": "Dit en alle volgende berichten"
"delete_just_this_message": "Alleen dit bericht",
"delete_this_and_subsequent": "Dit en alle volgende berichten",
"edit_message": "Alle berichten na dit bericht verwijderen?",
"edit_just_this_message": "Nee, alleen dit bericht bewerken",
"edit_this_and_delete_subsequent": "Ja"
},
"errors": {
"invalid_data_uri": "Ongeldig data-URI-formaat",

View file

@ -19,8 +19,11 @@
"delete_config_profile": "Czy na pewno chcesz usunąć ten profil konfiguracyjny?",
"delete_custom_mode": "Czy na pewno chcesz usunąć ten niestandardowy tryb?",
"delete_message": "Co chcesz usunąć?",
"just_this_message": "Tylko tę wiadomość",
"this_and_subsequent": "Tę i wszystkie kolejne wiadomości"
"delete_just_this_message": "Tylko tę wiadomość",
"delete_this_and_subsequent": "Tę i wszystkie kolejne wiadomości",
"edit_message": "Usunąć wszystkie wiadomości po tej?",
"edit_just_this_message": "Nie, tylko edytuj tę wiadomość",
"edit_this_and_delete_subsequent": "Tak"
},
"errors": {
"invalid_data_uri": "Nieprawidłowy format URI danych",

View file

@ -23,8 +23,11 @@
"delete_config_profile": "Tem certeza de que deseja excluir este perfil de configuração?",
"delete_custom_mode": "Tem certeza de que deseja excluir este modo personalizado?",
"delete_message": "O que você gostaria de excluir?",
"just_this_message": "Apenas esta mensagem",
"this_and_subsequent": "Esta e todas as mensagens subsequentes"
"delete_just_this_message": "Apenas esta mensagem",
"delete_this_and_subsequent": "Esta e todas as mensagens subsequentes",
"edit_message": "Excluir todas as mensagens após esta?",
"edit_just_this_message": "Não, apenas editar esta",
"edit_this_and_delete_subsequent": "Sim"
},
"errors": {
"invalid_data_uri": "Formato de URI de dados inválido",

View file

@ -20,7 +20,11 @@
"delete_custom_mode": "Вы уверены, что хотите удалить этот пользовательский режим?",
"delete_message": "Что вы хотите удалить?",
"just_this_message": "Только это сообщение",
"this_and_subsequent": "Это и все последующие сообщения"
"delete_just_this_message": "Только это сообщение",
"delete_this_and_subsequent": "Это и все последующие сообщения",
"edit_message": "Удалить все сообщения после этого?",
"edit_just_this_message": "Нет, только редактировать это",
"edit_this_and_delete_subsequent": "Да"
},
"errors": {
"invalid_data_uri": "Неверный формат URI данных",

View file

@ -20,7 +20,11 @@
"delete_custom_mode": "Bu özel modu silmek istediğinizden emin misiniz?",
"delete_message": "Neyi silmek istersiniz?",
"just_this_message": "Sadece bu mesajı",
"this_and_subsequent": "Bu ve sonraki tüm mesajları"
"delete_just_this_message": "Sadece bu mesajı",
"delete_this_and_subsequent": "Bu ve sonraki tüm mesajları",
"edit_message": "Bu mesajdan sonraki tüm mesajlar silinsin mi?",
"edit_just_this_message": "Hayır, sadece bunu düzenle",
"edit_this_and_delete_subsequent": "Evet"
},
"errors": {
"invalid_data_uri": "Geçersiz veri URI formatı",

View file

@ -20,7 +20,11 @@
"delete_custom_mode": "Bạn có chắc chắn muốn xóa chế độ tùy chỉnh này không?",
"delete_message": "Bạn muốn xóa gì?",
"just_this_message": "Chỉ tin nhắn này",
"this_and_subsequent": "Tin nhắn này và tất cả tin nhắn tiếp theo"
"delete_just_this_message": "Chỉ tin nhắn này",
"delete_this_and_subsequent": "Tin nhắn này và tất cả tin nhắn tiếp theo",
"edit_message": "Xóa tất cả tin nhắn sau tin nhắn này?",
"edit_just_this_message": "Không, chỉ chỉnh sửa tin nhắn này",
"edit_this_and_delete_subsequent": "Có"
},
"errors": {
"invalid_data_uri": "Định dạng URI dữ liệu không hợp lệ",

View file

@ -19,8 +19,11 @@
"delete_config_profile": "您确定要删除此配置文件吗?",
"delete_custom_mode": "您确定要删除此自定义模式吗?",
"delete_message": "您想删除什么?",
"just_this_message": "仅此消息",
"this_and_subsequent": "此消息及所有后续消息"
"edit_message": "删除此消息后的所有消息?",
"delete_just_this_message": "仅此消息",
"edit_just_this_message": "不,仅编辑此消息",
"delete_this_and_subsequent": "此消息及所有后续消息",
"edit_this_and_delete_subsequent": "是"
},
"errors": {
"invalid_mcp_config": "项目MCP配置格式无效",

View file

@ -19,8 +19,11 @@
"delete_config_profile": "您確定要刪除此設定檔案嗎?",
"delete_custom_mode": "您確定要刪除此自訂模式嗎?",
"delete_message": "您想刪除哪些內容?",
"just_this_message": "僅這則訊息",
"this_and_subsequent": "這則訊息及所有後續訊息"
"edit_message": "刪除此訊息後的所有訊息?",
"delete_just_this_message": "僅這則訊息",
"edit_just_this_message": "否,僅編輯此訊息",
"delete_this_and_subsequent": "這則訊息及所有後續訊息",
"edit_this_and_delete_subsequent": "是"
},
"errors": {
"invalid_data_uri": "資料 URI 格式無效",