@@ -39,15 +39,12 @@ LocalComponents.Page {
3939
4040 Connections {
4141 target: modemManager
42− onModemsChanged: {
43− print("=== Modems changed, init");
44− print("Modem manager available:", modemManager.available);
45− print("SIM 1 present:", simManager0.present);
46− print("SIM 1 ready:", simManager0.ready);
42+ onGotSimCardChanged: {
43+ print("=== Got a usable SIM card, init language page");
4744 print("SIM 1 languages:", simManager0.preferredLanguages);
4845 print("SIM 1 country:", LocalePlugin.mccToCountryCode(simManager0.mobileCountryCode));
49− print("SIM 2 present:", simManager1.present);
50− print("SIM 2 ready:", simManager1.ready);
46+ print("SIM 2 languages:", simManager1.preferredLanguages);
47+ print("SIM 2 country:", LocalePlugin.mccToCountryCode(simManager1.mobileCountryCode));
5148 init();
5249 }
5350 }
@@ -64,26 +61,22 @@ LocalComponents.Page {
6461 print("SIM 1 detected lang:", detectedLang);
6562 } else if (plugin.currentLanguage != -1) {
6663 detectedLang = plugin.languageCodes[plugin.currentLanguage];
67− print("Still using current language", detectedLang, "as default");
64+ print("Using current language", detectedLang, "as default");
6865 } else {
6966 print("No lang detected, falling back to default (en_US)");
7067 detectedLang = "en_US"; // fallback to default lang
7168 }
7269
7370 // preselect the detected language
74− var selectedIndex = -1;
7571 for (var i = 0; i < plugin.languageCodes.length; i++) {
7672 var code = plugin.languageCodes[i].split(".")[0]; // remove the encoding part, after dot (en_US.utf8 -> en_US)
7773 if (detectedLang === code) {
74+ print("Found detected language", detectedLang, "at index", i);
7875 languagesListView.currentIndex = i;
79− selectedIndex = i;
76+ languagesListView.positionViewAtIndex(i, ListView.Center);
8077 break;
8178 }
8279 }
83−
84− if (selectedIndex !== -1) {
85− languagesListView.positionViewAtIndex(selectedIndex, ListView.Center);
86− }
8780 }
8881
8982 Column {