mirror of
https://github.com/stablyai/orca.git
synced 2026-09-21 16:02:20 +00:00
Keep new worktree dialog actions visible while scrolling (#21915)
* Keep new worktree dialog actions outside scrolling content * Trigger missing PR checks
This commit is contained in:
@@ -59,6 +59,7 @@ export default function NewWorkspaceComposerCard(
|
||||
const {
|
||||
contextualTourSource,
|
||||
containerClassName,
|
||||
contentClassName,
|
||||
composerRef,
|
||||
onComposerNodeChange,
|
||||
nameInputRef,
|
||||
@@ -290,12 +291,12 @@ export default function NewWorkspaceComposerCard(
|
||||
onDragEnter={dragHandlers.onDragEnter}
|
||||
onDragLeave={dragHandlers.onDragLeave}
|
||||
className={cn(
|
||||
'grid min-w-0 gap-1 rounded-md transition',
|
||||
'flex min-h-0 min-w-0 flex-1 flex-col gap-1 rounded-md transition',
|
||||
isFileDragOver && 'ring-2 ring-ring/30',
|
||||
containerClassName
|
||||
)}
|
||||
>
|
||||
<div className="min-w-0 space-y-4 pt-3">
|
||||
<div className={cn('min-h-0 min-w-0 space-y-4 pt-3', contentClassName)}>
|
||||
<NewWorkspaceComposerProjectSection
|
||||
{...props}
|
||||
projectOptions={projectOptions}
|
||||
@@ -337,10 +338,12 @@ export default function NewWorkspaceComposerCard(
|
||||
activeFolderWorkspaceId={activeFolderWorkspaceId}
|
||||
/>
|
||||
</div>
|
||||
<NewWorkspaceComposerFooter
|
||||
{...props}
|
||||
submitShortcutModifierLabel={getScreenSubmitModifierLabel()}
|
||||
/>
|
||||
<div className="shrink-0 space-y-1">
|
||||
<NewWorkspaceComposerFooter
|
||||
{...props}
|
||||
submitShortcutModifierLabel={getScreenSubmitModifierLabel()}
|
||||
/>
|
||||
</div>
|
||||
<AddRemoteHostDialog mode={addRemoteHostMode} onOpenChange={setAddRemoteHostMode} />
|
||||
{setLocationDialogMounted ? (
|
||||
<React.Suspense fallback={null}>
|
||||
|
||||
@@ -291,11 +291,9 @@ function QuickTabBody({
|
||||
</DialogHeader>
|
||||
<NewWorkspaceComposerCard
|
||||
contextualTourSource={modalData.contextualTourSource}
|
||||
// Why: the scroll container clips children (overflow-y-auto forces overflow-x to auto),
|
||||
// while Orca's standard field focus ring paints 3px outside the control and the ghost
|
||||
// "Advanced" disclosure pulls its padded hover highlight ~8px left to align its label with
|
||||
// the field labels. Inset px-2 so both stay fully visible instead of clipped at the edge.
|
||||
containerClassName="min-h-0 flex-1 overflow-y-auto px-2 scrollbar-sleek"
|
||||
// Keep focus rings and the Advanced hover highlight inside the scroll padding.
|
||||
containerClassName="px-2"
|
||||
contentClassName="-mx-2 flex-1 overflow-y-auto px-2 pb-1 scrollbar-sleek"
|
||||
composerRef={composerRef}
|
||||
onComposerNodeChange={onComposerNodeChange}
|
||||
nameInputRef={nameInputRef}
|
||||
|
||||
@@ -30,6 +30,7 @@ export const EMPTY_EPHEMERAL_VM_RECIPES: EphemeralVmRecipeOption[] = []
|
||||
export type NewWorkspaceComposerCardProps = {
|
||||
contextualTourSource?: string
|
||||
containerClassName?: string
|
||||
contentClassName?: string
|
||||
composerRef?: React.RefObject<HTMLDivElement | null>
|
||||
onComposerNodeChange?: (node: HTMLDivElement | null) => void
|
||||
nameInputRef?: React.RefObject<HTMLInputElement | null>
|
||||
|
||||
Reference in New Issue
Block a user