Skip to content

Commit 834325c

Browse files
committed
Replace DefaultDirectoryPicker with FormPathInputComponent in PreferencesTab
1 parent d93822e commit 834325c

File tree

1 file changed

+15
-19
lines changed

1 file changed

+15
-19
lines changed

apps/studio/src/modules/user-settings/components/preferences-tab.tsx

Lines changed: 15 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import { SupportedLocale } from '@studio/common/lib/locale';
22
import { useI18n } from '@wordpress/react-i18n';
33
import { useEffect, useState } from 'react';
44
import Button from 'src/components/button';
5+
import { FormPathInputComponent } from 'src/components/form-path-input';
56
import { useFeatureFlags } from 'src/hooks/use-feature-flags';
67
import { isWindowsStore } from 'src/lib/app-globals';
78
import { getIpcApi } from 'src/lib/get-ipc-api';
@@ -22,7 +23,7 @@ import {
2223
useGetStudioCliIsInstalledQuery,
2324
useSaveStudioCliIsInstalledMutation,
2425
} from 'src/stores/installed-apps-api';
25-
import { DefaultDirectoryPicker } from './default-directory-picker';
26+
import { SettingsFormField } from './settings-form-field';
2627

2728
export const PreferencesTab = ( { onClose }: { onClose: () => void } ) => {
2829
const { __ } = useI18n();
@@ -45,7 +46,6 @@ export const PreferencesTab = ( { onClose }: { onClose: () => void } ) => {
4546
const [ storedDefaultSiteDirectory, setStoredDefaultSiteDirectory ] = useState< string >();
4647
const [ defaultSiteDirectory, setDefaultSiteDirectory ] = useState< string >();
4748
const [ isLoadingDefaultSiteDirectory, setIsLoadingDefaultSiteDirectory ] = useState( true );
48-
const [ isSelectingDefaultDirectory, setIsSelectingDefaultDirectory ] = useState( false );
4949

5050
const savePreferences = async () => {
5151
if ( dirtyLocale ) {
@@ -105,17 +105,12 @@ export const PreferencesTab = ( { onClose }: { onClose: () => void } ) => {
105105
}, [] );
106106

107107
const handleChangeDefaultDirectory = async () => {
108-
setIsSelectingDefaultDirectory( true );
109-
try {
110-
const response = await getIpcApi().showOpenFolderDialog(
111-
__( 'Select default site directory' ),
112-
defaultSiteDirectory ?? ''
113-
);
114-
if ( response?.path ) {
115-
setDefaultSiteDirectory( response.path );
116-
}
117-
} finally {
118-
setIsSelectingDefaultDirectory( false );
108+
const response = await getIpcApi().showOpenFolderDialog(
109+
__( 'Select default site directory' ),
110+
defaultSiteDirectory ?? ''
111+
);
112+
if ( response?.path ) {
113+
setDefaultSiteDirectory( response.path );
119114
}
120115
};
121116

@@ -134,12 +129,13 @@ export const PreferencesTab = ( { onClose }: { onClose: () => void } ) => {
134129
{ enableAgentSuite && <McpSettings /> }
135130
</>
136131
) }
137-
<DefaultDirectoryPicker
138-
directory={ defaultSiteDirectory }
139-
isLoading={ isLoadingDefaultSiteDirectory }
140-
isSelecting={ isSelectingDefaultDirectory }
141-
onPick={ handleChangeDefaultDirectory }
142-
/>
132+
<SettingsFormField label={ __( 'Default site directory' ) }>
133+
<FormPathInputComponent
134+
value={ isLoadingDefaultSiteDirectory ? __( 'Loading...' ) : defaultSiteDirectory ?? '' }
135+
onClick={ handleChangeDefaultDirectory }
136+
doesPathContainWordPress={ false }
137+
/>
138+
</SettingsFormField>
143139
<div className="mt-auto pt-2 flex justify-end gap-3">
144140
<Button
145141
variant="tertiary"

0 commit comments

Comments
 (0)