Skip to content

Commit 6b77301

Browse files
committed
feat: auto focus inputs or button
1 parent a3ef386 commit 6b77301

File tree

1 file changed

+12
-8
lines changed

1 file changed

+12
-8
lines changed

electron/renderer/components/sidebar/sidebar-item-accounts.tsx

+12-8
Original file line numberDiff line numberDiff line change
@@ -63,18 +63,20 @@ export const SidebarItemAccounts: React.FC = (): ReactNode => {
6363
(tableRowItem: TableRowItem) => {
6464
closeModals();
6565
setTableRowItem(tableRowItem);
66+
reset(tableRowItem);
6667
setShowEditAccountModal(true);
6768
},
68-
[setTableRowItem, closeModals]
69+
[setTableRowItem, reset, closeModals]
6970
);
7071

7172
const onRemoveAccountClick = useCallback(
7273
(tableRowItem: TableRowItem) => {
7374
closeModals();
7475
setTableRowItem(tableRowItem);
76+
reset(tableRowItem);
7577
setShowRemoveAccountModal(true);
7678
},
77-
[setTableRowItem, closeModals]
79+
[setTableRowItem, reset, closeModals]
7880
);
7981

8082
const onAccountSaveConfirm = useCallback(() => {
@@ -112,7 +114,6 @@ export const SidebarItemAccounts: React.FC = (): ReactNode => {
112114
cancelButtonText="Cancel"
113115
confirmButtonText="Save"
114116
buttonColor="primary"
115-
defaultFocusedButton="cancel"
116117
>
117118
<EuiForm component="form">
118119
<EuiFormRow label="Name">
@@ -124,9 +125,11 @@ export const SidebarItemAccounts: React.FC = (): ReactNode => {
124125
return (
125126
<EuiFieldText
126127
name={field.name}
128+
defaultValue={field.value}
127129
onBlur={field.onBlur}
128130
onChange={field.onChange}
129131
isInvalid={fieldState.invalid}
132+
autoFocus={true}
130133
/>
131134
);
132135
}}
@@ -141,6 +144,7 @@ export const SidebarItemAccounts: React.FC = (): ReactNode => {
141144
return (
142145
<EuiFieldPassword
143146
name={field.name}
147+
defaultValue={field.value}
144148
onBlur={field.onBlur}
145149
onChange={field.onChange}
146150
isInvalid={fieldState.invalid}
@@ -164,24 +168,22 @@ export const SidebarItemAccounts: React.FC = (): ReactNode => {
164168
cancelButtonText="Cancel"
165169
confirmButtonText="Save"
166170
buttonColor="primary"
167-
defaultFocusedButton="cancel"
168171
>
169172
<EuiForm component="form">
170173
<EuiFormRow label="Name">
171174
<Controller
172175
name="accountName"
173-
defaultValue={tableRowItem?.accountName}
174176
control={control}
175177
rules={{ required: true }}
176178
render={({ field, fieldState }) => {
177179
return (
178180
<EuiFieldText
179181
name={field.name}
182+
defaultValue={field.value}
180183
onBlur={field.onBlur}
181184
onChange={field.onChange}
182185
isInvalid={fieldState.invalid}
183-
readOnly={true}
184-
value={tableRowItem?.accountName}
186+
disabled={true}
185187
/>
186188
);
187189
}}
@@ -196,10 +198,12 @@ export const SidebarItemAccounts: React.FC = (): ReactNode => {
196198
return (
197199
<EuiFieldPassword
198200
name={field.name}
201+
defaultValue={field.value}
199202
onBlur={field.onBlur}
200203
onChange={field.onChange}
201204
isInvalid={fieldState.invalid}
202205
type="dual"
206+
autoFocus={true}
203207
/>
204208
);
205209
}}
@@ -208,7 +212,7 @@ export const SidebarItemAccounts: React.FC = (): ReactNode => {
208212
</EuiForm>
209213
</EuiConfirmModal>
210214
);
211-
}, [tableRowItem, control, onAccountSaveConfirm, closeModals]);
215+
}, [control, onAccountSaveConfirm, closeModals]);
212216

213217
const accountRemoveModal = useMemo(() => {
214218
return (

0 commit comments

Comments
 (0)