mirror of
https://github.com/andrepimenta/claude-code-chat.git
synced 2025-12-10 23:09:50 +00:00
fix: input overflow and flexible panel positioning
This commit is contained in:
15
CHANGELOG.md
15
CHANGELOG.md
@@ -4,6 +4,21 @@ All notable changes to the "claude-code-chat" extension will be documented in th
|
|||||||
|
|
||||||
Check [Keep a Changelog](http://keepachangelog.com/) for recommendations on how to structure this file.
|
Check [Keep a Changelog](http://keepachangelog.com/) for recommendations on how to structure this file.
|
||||||
|
|
||||||
|
## [1.0.4] - 2025-01-22
|
||||||
|
|
||||||
|
### 🐛 Bug Fixes
|
||||||
|
- Fixed input text area overflow issue by adding `box-sizing: border-box` to prevent padding from extending beyond container width
|
||||||
|
- Fixed command parameter handling for `claude-code-chat.openChat` to properly handle both ViewColumn and Uri parameters from different invocation contexts
|
||||||
|
|
||||||
|
### 🔧 Technical Improvements
|
||||||
|
- Enhanced `show()` method to accept optional ViewColumn parameter with ViewColumn.Two as default
|
||||||
|
- Added proper type checking for command parameters to handle context menu invocations
|
||||||
|
- Improved webview panel positioning with flexible column parameter support
|
||||||
|
|
||||||
|
### 🎨 UI/UX Improvements
|
||||||
|
- Resolved text input container sizing issues that caused visual overflow
|
||||||
|
- Better input field styling consistency across different VS Code themes
|
||||||
|
|
||||||
## [1.0.0] - 2025-01-15
|
## [1.0.0] - 2025-01-15
|
||||||
|
|
||||||
### 🚀 Major Features Added
|
### 🚀 Major Features Added
|
||||||
|
|||||||
@@ -20,9 +20,9 @@ Ditch the command line and experience Claude Code like never before. This extens
|
|||||||
💾 **Conversation History** - Automatic conversation history and session management
|
💾 **Conversation History** - Automatic conversation history and session management
|
||||||
🎨 **VS Code Native** - Claude Code integrated directly into VS Code with native theming and sidebar support
|
🎨 **VS Code Native** - Claude Code integrated directly into VS Code with native theming and sidebar support
|
||||||
🧠 **Plan and Thinking modes** - Plan First and configurable Thinking modes for better results
|
🧠 **Plan and Thinking modes** - Plan First and configurable Thinking modes for better results
|
||||||
⚡ **Smart File/Image Context and Custom Commands** - Reference any file, copy images or screenshots, and create custom commands
|
⚡ **Smart File/Image Context and Custom Commands** - Reference any file, paste images or screenshots and create custom commands
|
||||||
🤖 **Model Selection** - Choose between Opus, Sonnet, or Default based on your needs
|
🤖 **Model Selection** - Choose between Opus, Sonnet, or Default based on your needs
|
||||||
🐧 **Windows/WSL Support** - Full Windows support and Windows Subsystem for Linux integration and compatibility
|
🐧 **Windows/WSL Support** - Full native Windows and WSL support
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
"name": "claude-code-chat",
|
"name": "claude-code-chat",
|
||||||
"displayName": "Claude Code Chat",
|
"displayName": "Claude Code Chat",
|
||||||
"description": "Beautiful Claude Code Chat Interface for VS Code",
|
"description": "Beautiful Claude Code Chat Interface for VS Code",
|
||||||
"version": "1.0.3",
|
"version": "1.0.4",
|
||||||
"publisher": "AndrePimenta",
|
"publisher": "AndrePimenta",
|
||||||
"author": "Andre Pimenta",
|
"author": "Andre Pimenta",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|||||||
@@ -10,9 +10,9 @@ export function activate(context: vscode.ExtensionContext) {
|
|||||||
console.log('Claude Code Chat extension is being activated!');
|
console.log('Claude Code Chat extension is being activated!');
|
||||||
const provider = new ClaudeChatProvider(context.extensionUri, context);
|
const provider = new ClaudeChatProvider(context.extensionUri, context);
|
||||||
|
|
||||||
const disposable = vscode.commands.registerCommand('claude-code-chat.openChat', () => {
|
const disposable = vscode.commands.registerCommand('claude-code-chat.openChat', (column?: vscode.ViewColumn) => {
|
||||||
console.log('Claude Code Chat command executed!');
|
console.log('Claude Code Chat command executed!');
|
||||||
provider.show();
|
provider.show(column);
|
||||||
});
|
});
|
||||||
|
|
||||||
const loadConversationDisposable = vscode.commands.registerCommand('claude-code-chat.loadConversation', (filename: string) => {
|
const loadConversationDisposable = vscode.commands.registerCommand('claude-code-chat.loadConversation', (filename: string) => {
|
||||||
@@ -134,21 +134,22 @@ class ClaudeChatProvider {
|
|||||||
this._currentSessionId = latestConversation?.sessionId;
|
this._currentSessionId = latestConversation?.sessionId;
|
||||||
}
|
}
|
||||||
|
|
||||||
public show() {
|
public show(column: vscode.ViewColumn | vscode.Uri = vscode.ViewColumn.Two) {
|
||||||
const column = vscode.ViewColumn.Two;
|
// Handle case where a URI is passed instead of ViewColumn
|
||||||
|
const actualColumn = column instanceof vscode.Uri ? vscode.ViewColumn.Two : column;
|
||||||
|
|
||||||
// Close sidebar if it's open
|
// Close sidebar if it's open
|
||||||
this._closeSidebar();
|
this._closeSidebar();
|
||||||
|
|
||||||
if (this._panel) {
|
if (this._panel) {
|
||||||
this._panel.reveal(column);
|
this._panel.reveal(actualColumn);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
this._panel = vscode.window.createWebviewPanel(
|
this._panel = vscode.window.createWebviewPanel(
|
||||||
'claudeChat',
|
'claudeChat',
|
||||||
'Claude Code Chat',
|
'Claude Code Chat',
|
||||||
column,
|
actualColumn,
|
||||||
{
|
{
|
||||||
enableScripts: true,
|
enableScripts: true,
|
||||||
retainContextWhenHidden: true,
|
retainContextWhenHidden: true,
|
||||||
|
|||||||
@@ -1350,13 +1350,14 @@ const styles = `
|
|||||||
|
|
||||||
.input-field {
|
.input-field {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
box-sizing: border-box;
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
color: var(--vscode-input-foreground);
|
color: var(--vscode-input-foreground);
|
||||||
border: none;
|
border: none;
|
||||||
padding: 12px;
|
padding: 12px;
|
||||||
outline: none;
|
outline: none;
|
||||||
font-family: var(--vscode-editor-font-family);
|
font-family: var(--vscode-editor-font-family);
|
||||||
min-height: 20px;
|
min-height: 68px;
|
||||||
line-height: 1.4;
|
line-height: 1.4;
|
||||||
overflow-y: hidden;
|
overflow-y: hidden;
|
||||||
resize: none;
|
resize: none;
|
||||||
|
|||||||
@@ -944,6 +944,10 @@ const html = `<!DOCTYPE html>
|
|||||||
return; // Don't show the result message
|
return; // Don't show the result message
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(data.isError && data.content === "File has not been read yet. Read it first before writing to it."){
|
||||||
|
return addMessage("File has not been read yet. Let me read it first before writing to it.", 'system');
|
||||||
|
}
|
||||||
|
|
||||||
const messageDiv = document.createElement('div');
|
const messageDiv = document.createElement('div');
|
||||||
messageDiv.className = data.isError ? 'message error' : 'message tool-result';
|
messageDiv.className = data.isError ? 'message error' : 'message tool-result';
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user