diff --git a/app/lib/features/settings/presentation/screens/doh_settings.dart b/app/lib/features/settings/presentation/screens/doh_settings.dart index b32c6f24..0236ba41 100644 --- a/app/lib/features/settings/presentation/screens/doh_settings.dart +++ b/app/lib/features/settings/presentation/screens/doh_settings.dart @@ -145,41 +145,39 @@ class DohSettingsScreen extends HookConsumerWidget { child: RadioListTile( value: true, enabled: false, - title: Column( - children: [ - const Text('Custom'), - Form( - key: formKey, - child: TextFormField( - controller: customProviderController, - keyboardType: TextInputType.url, - validator: (value) { - return validateUrl( - value, - onlyHttpProtocol: true, - eagerParsing: false, - ); - }, - onSaved: (newProvider) async { - if (newProvider != null) { - await ref - .read( - saveEngineSettingsControllerProvider.notifier, - ) - .save( - (currentSettings) => currentSettings.copyWith - .dohProviderUrl(newProvider), - ); - } - }, - onFieldSubmitted: (_) { - if (formKey.currentState?.validate() == true) { - formKey.currentState?.save(); - } - }, - ), + title: Form( + key: formKey, + child: TextFormField( + controller: customProviderController, + keyboardType: TextInputType.url, + decoration: const InputDecoration( + label: Text('Custom Resolver URL'), + hintText: 'https://example.com/dns-query', + floatingLabelBehavior: FloatingLabelBehavior.always, ), - ], + validator: (value) { + return validateUrl( + value, + onlyHttpProtocol: true, + eagerParsing: false, + ); + }, + onSaved: (newProvider) async { + if (newProvider != null) { + await ref + .read(saveEngineSettingsControllerProvider.notifier) + .save( + (currentSettings) => currentSettings.copyWith + .dohProviderUrl(newProvider), + ); + } + }, + onFieldSubmitted: (_) { + if (formKey.currentState?.validate() == true) { + formKey.currentState?.save(); + } + }, + ), ), ), ),