diff --git a/src/views/webviewContent.ts b/src/views/webviewContent.ts
index 8a4cb48..fa6fb67 100644
--- a/src/views/webviewContent.ts
+++ b/src/views/webviewContent.ts
@@ -163,6 +163,32 @@ export function getWebviewContent(iconUri?: string): string {
border-radius: 4px;
cursor: pointer;
}
+ .optimize-button {
+ padding: 8px;
+ background: transparent;
+ color: var(--vscode-foreground);
+ border: none;
+ cursor: pointer;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ transition: opacity 0.2s ease;
+ width: 32px;
+ height: 32px;
+ align-self: flex-end;
+ margin-bottom: -6px;
+ }
+ .optimize-button:hover {
+ opacity: 0.7;
+ }
+ .optimize-button svg {
+ width: 16px;
+ height: 16px;
+ }
+ .optimize-button-wrapper {
+ display: flex;
+ align-items: flex-end;
+ }
.quick-actions {
display: flex;
gap: 8px;
@@ -491,6 +517,14 @@ export function getWebviewContent(iconUri?: string): string {
+
+
+
@@ -509,6 +543,8 @@ export function getWebviewContent(iconUri?: string): string {
const editingFileName = document.getElementById('editingFileName');
let currentEditingFile = null;
+ let originalText = ''; // 保存原始文本用于撤回
+ let isOptimized = false; // 标记是否已优化
function sendMessage() {
const text = messageInput.value.trim();
@@ -519,6 +555,56 @@ export function getWebviewContent(iconUri?: string): string {
vscode.postMessage({ command: 'sendMessage', text: text, mode: mode });
messageInput.value = '';
messageInput.focus();
+
+ // 重置优化状态
+ resetOptimizeButton();
+ }
+
+ function handleOptimize() {
+ if (isOptimized) {
+ // 撤回操作
+ messageInput.value = originalText;
+ resetOptimizeButton();
+ } else {
+ // 优化操作
+ originalText = messageInput.value; // 保存原始文本
+
+ // 使用死数据替换输入框内容
+ const optimizedTexts = [
+ '请帮我优化这段代码,提高性能和可读性',
+ '请分析这个问题并给出最佳解决方案',
+ '请帮我重构这段代码,使其更加简洁高效',
+ '请检查代码中的潜在问题并提供改进建议'
+ ];
+ const randomText = optimizedTexts[Math.floor(Math.random() * optimizedTexts.length)];
+ messageInput.value = randomText;
+
+ // 切换到撤回状态
+ isOptimized = true;
+ updateOptimizeButton();
+ }
+
+ messageInput.focus();
+ }
+
+ function updateOptimizeButton() {
+ const optimizeIcon = document.getElementById('optimizeIcon');
+ const optimizeTooltip = document.getElementById('optimizeTooltip');
+
+ // 切换为撤回图标
+ optimizeIcon.innerHTML = '';
+ optimizeTooltip.textContent = '撤回';
+ }
+
+ function resetOptimizeButton() {
+ const optimizeIcon = document.getElementById('optimizeIcon');
+ const optimizeTooltip = document.getElementById('optimizeTooltip');
+
+ // 切换回优化图标(星星图标)
+ optimizeIcon.innerHTML = '';
+ optimizeTooltip.textContent = '一键优化';
+ isOptimized = false;
+ originalText = '';
}
function readFile() {