From cc72dc10176e5f5f6c597e42ff959bb527c3fd8f Mon Sep 17 00:00:00 2001 From: Jiang Bohan Date: Thu, 22 Jan 2026 17:02:33 +0800 Subject: [PATCH] fix: permission buttons and text overflow container width Add proper overflow handling to permission UI components: - Add flex-wrap and truncate to action buttons in StandardPermissionUI - Add break-words to title and kind text in StandardPermissionUI - Add break-words to question header and text in AskUserQuestionUI - Add min-w-0, overflow-hidden, and break-words to QuestionOptions Closes #88 Co-Authored-By: Claude Opus 4.5 --- .../AskUserQuestion/AskUserQuestionUI.tsx | 6 +++-- .../AskUserQuestion/QuestionOptions.tsx | 8 +++--- .../permission/StandardPermissionUI.tsx | 26 +++++++++++++------ 3 files changed, 27 insertions(+), 13 deletions(-) diff --git a/src/renderer/src/components/permission/AskUserQuestion/AskUserQuestionUI.tsx b/src/renderer/src/components/permission/AskUserQuestion/AskUserQuestionUI.tsx index c29e1e79ba..f083f47c54 100644 --- a/src/renderer/src/components/permission/AskUserQuestion/AskUserQuestionUI.tsx +++ b/src/renderer/src/components/permission/AskUserQuestion/AskUserQuestionUI.tsx @@ -117,11 +117,13 @@ export function AskUserQuestionUI({ {/* Question header */} {currentQuestion.header && ( -
{currentQuestion.header}
+
+ {currentQuestion.header} +
)} {/* Question text */} -
+
{currentQuestion.question} {isMultiSelect && ( (Select multiple) diff --git a/src/renderer/src/components/permission/AskUserQuestion/QuestionOptions.tsx b/src/renderer/src/components/permission/AskUserQuestion/QuestionOptions.tsx index a7ca910d14..e1a6e0952a 100644 --- a/src/renderer/src/components/permission/AskUserQuestion/QuestionOptions.tsx +++ b/src/renderer/src/components/permission/AskUserQuestion/QuestionOptions.tsx @@ -39,10 +39,12 @@ export function QuestionOptions({ {isSelected && }
)} -
-
{opt.label}
+
+
{opt.label}
{opt.description && ( -
{opt.description}
+
+ {opt.description} +
)}
diff --git a/src/renderer/src/components/permission/StandardPermissionUI.tsx b/src/renderer/src/components/permission/StandardPermissionUI.tsx index 109c9e41c0..7ed999e9ec 100644 --- a/src/renderer/src/components/permission/StandardPermissionUI.tsx +++ b/src/renderer/src/components/permission/StandardPermissionUI.tsx @@ -44,10 +44,14 @@ export function StandardPermissionUI({
{/* Tool call info */} -
-
{toolCall.title || 'Tool Call'}
+
+
+ {toolCall.title || 'Tool Call'} +
{toolCall.kind && ( -
Type: {toolCall.kind}
+
+ Type: {toolCall.kind} +
)}
@@ -62,7 +66,7 @@ export function StandardPermissionUI({ {/* Action buttons */} {isPending ? ( -
+
{options.length > 2 ? ( // Multiple options - show all options.map((option) => ( @@ -77,8 +81,9 @@ export function StandardPermissionUI({ : 'outline' } onClick={() => respondToRequest(option.optionId)} + className="max-w-full truncate" > - {option.name} + {option.name} )) ) : ( @@ -88,11 +93,16 @@ export function StandardPermissionUI({ size="sm" variant="outline" onClick={() => respondToRequest(denyOption.optionId)} + className="max-w-full truncate" > - {denyOption.name || 'Deny'} + {denyOption.name || 'Deny'} - )}