From b493a86e7480e063aa6fa28764e921b78e2f4195 Mon Sep 17 00:00:00 2001 From: Yann Villellas Date: Thu, 1 Oct 2026 16:15:57 +0200 Subject: [PATCH] fix(app): correct language dropdown overflow --- .../sections/preferences_settings_screen.dart | 31 +++++++++++-------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/app/lib/screens/settings/sections/preferences_settings_screen.dart b/app/lib/screens/settings/sections/preferences_settings_screen.dart index 0e551657..571201cd 100644 --- a/app/lib/screens/settings/sections/preferences_settings_screen.dart +++ b/app/lib/screens/settings/sections/preferences_settings_screen.dart @@ -24,19 +24,24 @@ class PreferencesSettingsScreen extends StatelessWidget { ListTile( leading: const Icon(Icons.language_outlined), title: Text(l10n.preferencesScreen_language), - trailing: DropdownButton( - value: settingsService.languageCode, - items: languageOptions.entries.map((entry) { - return DropdownMenuItem( - value: entry.key, - child: Text(entry.value), - ); - }).toList(), - onChanged: (String? newLanguageCode) { - if (newLanguageCode != null) { - context.read().setLocale(newLanguageCode); - } - }, + trailing: ConstrainedBox( + constraints: const BoxConstraints(maxWidth: 180), + child: DropdownButton( + isExpanded: true, + menuWidth: MediaQuery.sizeOf(context).width * 0.9, + value: settingsService.languageCode, + items: languageOptions.entries.map((entry) { + return DropdownMenuItem( + value: entry.key, + child: Text(entry.value, overflow: TextOverflow.ellipsis), + ); + }).toList(), + onChanged: (String? newLanguageCode) { + if (newLanguageCode != null) { + context.read().setLocale(newLanguageCode); + } + }, + ), ), ), ListTile(