feat: WebView2 chat — real bubbles, Markdown & thinking indicator (v0.7.0)
The AI Chat pane's message area moves from RichTextBox to WebView2: - Real chat bubbles (user right, AI left) with full Markdown via Markdig (code blocks, tables, lists, inline code). - Sending a prompt shows an animated "…" thinking bubble that clears when the reply lands (AgentHost Status "thinking" → showThinking; AssistantText → hideThinking + bubble). - HTML/CSS/JS template inlined in Ai/ChatHtml.cs (NavigateToString, no external deps); C# drives it via ExecuteScriptAsync. Calls made before WebView2 is ready are queued and flushed on NavigationCompleted. User-data folder under %LocalAppData%\ETTerms\WebView2. Bottom bar (input / model dropdown / Send), [AI] serial tagging and PDU confirmations are unchanged. Adds Microsoft.Web.WebView2 + Markdig; needs the WebView2 Runtime (built into Windows 11). Publish verified to include the native WebView2Loader.dll. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
+1
-1
@@ -764,7 +764,7 @@ Rename-Item (Join-Path $proot "ETTerms.exe") "ETTerms v$ver.exe"
|
||||
|
||||
- ~~**AI / MCP 整合**~~(✅ 已於 [Phase 9](#development-phases) 實作:Serial MCP Server,讓 AI agent 直接操作 serial;未來可再擴充 SSH / Shell MCP 工具)
|
||||
- ~~**SFTP 檔案瀏覽**~~(✅ 已於 Phase 8 實作:sidebar SFTP 分頁)
|
||||
- **AI Chat 氣泡版(WebView2)**(v0.7.0 候選):目前 AI 分頁走 RichTextBox「乾淨逐字稿」風(與終端機一致、務實);若要真正的聊天氣泡(圓角、限寬、user 右 AI 左)+ Markdown / 程式碼區塊高亮 + 工具呼叫可摺疊卡片,正解是改用 WebView2 + HTML/CSS 渲染。代價:引入 WebView2 依賴、portable 版變大。列為獨立升級,不在 RichTextBox 上硬做氣泡。
|
||||
- ~~**AI Chat 氣泡版(WebView2)**~~(✅ v0.7.0 已實作):AI 分頁訊息區改用 WebView2 渲染真氣泡(user 右 / AI 左)+ Markdown(Markdig 轉 HTML:程式碼區塊、表格、清單)+ 送出後 thinking 動畫泡。HTML 模板 `Ai/ChatHtml.cs`(全內嵌 CSS/JS,`NavigateToString`),C# 經 `ExecuteScriptAsync` 呼叫 JS(`addUser`/`addAI`/`addTool`/`showThinking`/`hideThinking`…;WebView2 未就緒前的呼叫先入佇列,`NavigationCompleted` 後 flush)。WebView2 使用者資料夾 `%LocalAppData%\ETTerms\WebView2`。底部控制列(輸入框 / 模型下拉 / Send)仍 WinForms。依賴 WebView2 Runtime(Win11 內建)。
|
||||
- **Telnet** session 類型(補一個 `TelnetChannel : ISessionChannel`)
|
||||
- **RDP / VNC** 分頁(KKTerm 用 mstscax.dll;ETTerms 可後期評估)
|
||||
- **tmux 自動 attach**(SSH 斷線後自動回貼,仿 KKTerm)
|
||||
|
||||
Reference in New Issue
Block a user