From 3e5ead25473d87ac75847cdb82ce9494f175a8ab Mon Sep 17 00:00:00 2001 From: Mathew Pareles Date: Mon, 13 Jan 2025 16:09:09 -0800 Subject: [PATCH 01/84] dropdown --- .../contrib/void/browser/react/src/util/inputs.tsx | 14 ++++++++------ .../react/src/void-settings-tsx/ModelDropdown.tsx | 3 ++- .../react/src/void-settings-tsx/Settings.tsx | 3 ++- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/src/vs/workbench/contrib/void/browser/react/src/util/inputs.tsx b/src/vs/workbench/contrib/void/browser/react/src/util/inputs.tsx index fd5582ea..c7205f5e 100644 --- a/src/vs/workbench/contrib/void/browser/react/src/util/inputs.tsx +++ b/src/vs/workbench/contrib/void/browser/react/src/util/inputs.tsx @@ -299,7 +299,8 @@ export const VoidCustomSelectBox = ({ options, selectedOption: selectedOption_, onChangeOption, - getOptionName, + getOptionDropdownName, + getOptionDisplayName, getOptionsEqual, className, arrowTouchesText = true, @@ -310,7 +311,8 @@ export const VoidCustomSelectBox = ({ options: T[]; selectedOption?: T; onChangeOption: (newValue: T) => void; - getOptionName: (option: T) => string; + getOptionDropdownName: (option: T) => string; + getOptionDisplayName: (option: T) => string; getOptionsEqual: (a: T, b: T) => boolean; className?: string; arrowTouchesText?: boolean; @@ -420,9 +422,9 @@ export const VoidCustomSelectBox = ({ aria-hidden="true" > {options.map((option) => ( -
+
- {getOptionName(option)} + {getOptionDropdownName(option)}
))}
@@ -437,7 +439,7 @@ export const VoidCustomSelectBox = ({ }} > - {getOptionName(selectedOption)} + {getOptionDisplayName(selectedOption)} ({ > {options.map((option) => { const thisOptionIsSelected = getOptionsEqual(option, selectedOption); - const optionName = getOptionName(option); + const optionName = getOptionDropdownName(option); return (
option.name} + getOptionDisplayName={(option) => option.selection.modelName} + getOptionDropdownName={(option) => option.name} getOptionsEqual={(a, b) => optionsEqual([a], [b])} className={`text-xs text-void-fg-3 px-1`} matchInputWidth={false} diff --git a/src/vs/workbench/contrib/void/browser/react/src/void-settings-tsx/Settings.tsx b/src/vs/workbench/contrib/void/browser/react/src/void-settings-tsx/Settings.tsx index 7636145b..6849c85b 100644 --- a/src/vs/workbench/contrib/void/browser/react/src/void-settings-tsx/Settings.tsx +++ b/src/vs/workbench/contrib/void/browser/react/src/void-settings-tsx/Settings.tsx @@ -109,7 +109,8 @@ const AddModelMenu = ({ onSubmit }: { onSubmit: () => void }) => { options={providerNames} selectedOption={providerName} onChangeOption={(pn) => setProviderName(pn)} - getOptionName={(pn) => pn ? displayInfoOfProviderName(pn).title : '(null)'} + getOptionDisplayName={(pn) => pn ? displayInfoOfProviderName(pn).title : '(null)'} + getOptionDropdownName={(pn) => pn ? displayInfoOfProviderName(pn).title : '(null)'} getOptionsEqual={(a, b) => a === b} className={`max-w-44 w-full border border-void-border-2 bg-void-bg-1 text-void-fg-3 text-root py-[4px] px-[6px] From 00fc9964e5203470ef113bac354a91cb3a99ac43 Mon Sep 17 00:00:00 2001 From: Mathew Pareles Date: Mon, 13 Jan 2025 16:45:15 -0800 Subject: [PATCH 02/84] ts by default --- src/vs/workbench/contrib/void/browser/react/src/util/inputs.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/vs/workbench/contrib/void/browser/react/src/util/inputs.tsx b/src/vs/workbench/contrib/void/browser/react/src/util/inputs.tsx index c7205f5e..b481b623 100644 --- a/src/vs/workbench/contrib/void/browser/react/src/util/inputs.tsx +++ b/src/vs/workbench/contrib/void/browser/react/src/util/inputs.tsx @@ -708,7 +708,7 @@ export const VoidCodeEditor = ({ initValue, language, maxHeight, showScrollbars onCreateInstance={useCallback((editor: CodeEditorWidget) => { const model = modelOfEditorId[id] ?? modelService.createModel( initValueRef.current, { - languageId: languageRef.current ? languageRef.current : '', + languageId: languageRef.current ? languageRef.current : 'typescript', onDidChange: (e) => { return { dispose: () => { } } } // no idea why they'd require this }) modelRef.current = model From accff821f8f84074ab4bb4ca5e1c88dd40b696d3 Mon Sep 17 00:00:00 2001 From: Andrew Pareles Date: Mon, 13 Jan 2025 16:54:24 -0800 Subject: [PATCH 03/84] style fixes --- .../void/browser/inlineDiffsService.ts | 1 + .../src/quick-edit-tsx/QuickEditChat.tsx | 21 ++++--------- .../react/src/sidebar-tsx/SidebarChat.tsx | 30 ++++--------------- .../void/browser/react/src/util/inputs.tsx | 5 ++-- 4 files changed, 16 insertions(+), 41 deletions(-) diff --git a/src/vs/workbench/contrib/void/browser/inlineDiffsService.ts b/src/vs/workbench/contrib/void/browser/inlineDiffsService.ts index 0422f5df..4d802909 100644 --- a/src/vs/workbench/contrib/void/browser/inlineDiffsService.ts +++ b/src/vs/workbench/contrib/void/browser/inlineDiffsService.ts @@ -378,6 +378,7 @@ class InlineDiffsService extends Disposable implements IInlineDiffsService { } }, onChangeHeight(height) { + if (height === 0) return // the viewZone sets this height to the container if it's out of view, ignore it viewZone.heightInPx = height // re-render with this new height editor.changeViewZones(accessor => { diff --git a/src/vs/workbench/contrib/void/browser/react/src/quick-edit-tsx/QuickEditChat.tsx b/src/vs/workbench/contrib/void/browser/react/src/quick-edit-tsx/QuickEditChat.tsx index 755c3dec..b037c71b 100644 --- a/src/vs/workbench/contrib/void/browser/react/src/quick-edit-tsx/QuickEditChat.tsx +++ b/src/vs/workbench/contrib/void/browser/react/src/quick-edit-tsx/QuickEditChat.tsx @@ -75,7 +75,7 @@ export const QuickEditChat = ({ const keybindingString = accessor.get('IKeybindingService').lookupKeybinding(VOID_CTRL_K_ACTION_ID)?.getLabel() - return
+ return
{/* input */}
{/* text input */} { @@ -129,7 +119,8 @@ export const QuickEditChat = ({ fnsRef={textAreaFnsRef} - placeholder={`${keybindingString} to select`} + placeholder={`Enter instructions...`} + // ${keybindingString} to select. onChangeText={useCallback((newStr: string) => { setInstructionsAreEmpty(!newStr) diff --git a/src/vs/workbench/contrib/void/browser/react/src/sidebar-tsx/SidebarChat.tsx b/src/vs/workbench/contrib/void/browser/react/src/sidebar-tsx/SidebarChat.tsx index de424fe3..83267d0f 100644 --- a/src/vs/workbench/contrib/void/browser/react/src/sidebar-tsx/SidebarChat.tsx +++ b/src/vs/workbench/contrib/void/browser/react/src/sidebar-tsx/SidebarChat.tsx @@ -177,8 +177,8 @@ export const ButtonSubmit = ({ className, disabled, ...props }: ButtonProps & Re return