Merge "Update owners file" into sc-qpr1-dev
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index 9d623a4..ecfb98d 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -310,7 +310,7 @@
     <string name="sim_change_data_title" msgid="9142726786345906606">"Skift SIM-kortet til data?"</string>
     <string name="sim_change_data_message" msgid="3567358694255933280">"Vil du bruge <xliff:g id="NEW_SIM">%1$s</xliff:g> i stedet for <xliff:g id="OLD_SIM">%2$s</xliff:g> til mobildata?"</string>
     <string name="wifi_calling_settings_title" msgid="5800018845662016507">"Wi-Fi-opkald"</string>
-    <string name="video_calling_settings_title" msgid="342829454913266078">"Videoopkald via mobilselskab"</string>
+    <string name="video_calling_settings_title" msgid="342829454913266078">"Videoopkald via mobilnetværk"</string>
     <string name="gsm_umts_options" msgid="4968446771519376808">"Indstillinger for GSM/UMTS"</string>
     <string name="cdma_options" msgid="3669592472226145665">"Indstillinger for CDMA"</string>
     <string name="throttle_data_usage" msgid="1944145350660420711">"Databrug"</string>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index 277148c..1c88d8e 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -821,7 +821,7 @@
     <string name="supp_service_call_resumed" msgid="3786864005920743546">"Η κλήση συνεχίστηκε."</string>
     <string name="supp_service_deflected_call" msgid="7565979024562921707">"Έγινε εκτροπή της κλήσης."</string>
     <string name="supp_service_forwarded_call" msgid="6475776013771821457">"Έγινε προώθηση της κλήσης."</string>
-    <string name="supp_service_conference_call" msgid="4004193534408317148">"Συμμετοχή σε κλήση διάσκεψης."</string>
+    <string name="supp_service_conference_call" msgid="4004193534408317148">"Συμμετοχή σε τηλεδιάσκεψη."</string>
     <string name="supp_service_held_call_released" msgid="2847835124639112410">"Έγινε αποδέσμευση της κλήσης σε κράτηση."</string>
     <string name="callFailed_otasp_provisioning_in_process" msgid="3345666183602879326">"Δεν είναι δυνατή η πραγματοποίηση κλήσης, καθώς εκτελείται παροχή υπηρεσιών στη συσκευή αυτήν τη στιγμή."</string>
     <string name="callFailed_already_dialing" msgid="7250591188960691086">"Δεν είναι δυνατή η πραγματοποίηση της κλήσης, επειδή βρίσκεται ήδη σε εξέλιξη εξερχόμενη κλήση."</string>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index d918672..3236666 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -578,7 +578,7 @@
     <string name="onscreenHoldText" msgid="4025348842151665191">"Attente"</string>
     <string name="onscreenEndCallText" msgid="6138725377654842757">"Terminé"</string>
     <string name="onscreenShowDialpadText" msgid="658465753816164079">"Clavier numérique"</string>
-    <string name="onscreenMuteText" msgid="5470306116733843621">"Ignorer"</string>
+    <string name="onscreenMuteText" msgid="5470306116733843621">"Couper le son"</string>
     <string name="onscreenAddCallText" msgid="9075675082903611677">"Autre appel"</string>
     <string name="onscreenMergeCallsText" msgid="3692389519611225407">"Fusionner les appels"</string>
     <string name="onscreenSwapCallsText" msgid="2682542150803377991">"Permuter"</string>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index 17e8fd7..eb1106b 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -183,7 +183,7 @@
     <string name="registration_done" msgid="5337407023566953292">"Terdaftar pada jaringan."</string>
     <string name="already_auto" msgid="8607068290733079336">"Sudah ada di pemilihan otomatis."</string>
     <string name="select_automatically" msgid="779750291257872651">"Pilih jaringan secara otomatis"</string>
-    <string name="manual_mode_disallowed_summary" msgid="3970048592179890197">"Tidak tersedia saat tersambung ke %1$s"</string>
+    <string name="manual_mode_disallowed_summary" msgid="3970048592179890197">"Tidak tersedia saat terhubung ke %1$s"</string>
     <string name="network_select_title" msgid="4117305053881611988">"Jaringan"</string>
     <string name="register_automatically" msgid="3907580547590554834">"Pendaftaran otomatis..."</string>
     <string name="preferred_network_mode_title" msgid="5253395265169539830">"Jenis jaringan yang dipilih"</string>
@@ -194,7 +194,7 @@
     <string name="network_disconnected" msgid="8844141106841160825">"Terputus"</string>
     <string name="network_connected" msgid="2760235679963580224">"Terhubung"</string>
     <string name="network_connecting" msgid="160901383582774987">"Menghubungkan..."</string>
-    <string name="network_could_not_connect" msgid="6547460848093727998">"Tidak dapat tersambung"</string>
+    <string name="network_could_not_connect" msgid="6547460848093727998">"Tidak dapat terhubung"</string>
   <string-array name="preferred_network_mode_choices">
     <item msgid="4531933377509551889">"GSM/WCDMA lebih disukai"</item>
     <item msgid="5120532750027435355">"GSM saja"</item>
@@ -687,7 +687,7 @@
     <string name="message_decode_error" msgid="1061856591500290887">"Terjadi kesalahan saat mendekode pesan."</string>
     <string name="callFailed_cdma_activation" msgid="5392057031552253550">"Kartu SIM telah mengaktifkan layanan dan memperbarui kemampuan roaming ponsel."</string>
     <string name="callFailed_cdma_call_limit" msgid="1074219746093031412">"Ada terlalu banyak panggilan aktif. Akhiri atau gabungkan panggilan yang ada sebelum melakukan panggilan baru."</string>
-    <string name="callFailed_imei_not_accepted" msgid="7257903653685147251">"Tidak dapat tersambung, masukkan kartu SIM yang valid."</string>
+    <string name="callFailed_imei_not_accepted" msgid="7257903653685147251">"Tidak dapat terhubung, masukkan kartu SIM yang valid."</string>
     <string name="callFailed_wifi_lost" msgid="1788036730589163141">"Sambungan Wi-Fi terputus. Panggilan diakhiri."</string>
     <string name="dialFailed_low_battery" msgid="6857904237423407056">"Panggilan video tidak bisa dilakukan karena daya baterai lemah."</string>
     <string name="callFailed_low_battery" msgid="4056828320214416182">"Panggilan video berakhir karena daya baterai lemah."</string>
diff --git a/res/values-te/strings.xml b/res/values-te/strings.xml
index 6a75909..9cc5b99 100644
--- a/res/values-te/strings.xml
+++ b/res/values-te/strings.xml
@@ -38,7 +38,7 @@
     <string name="audio_mode_earpiece" msgid="2823700267171134282">"హ్యాండ్‌సెట్ ఇయర్‌పీస్"</string>
     <string name="audio_mode_wired_headset" msgid="5028010823105817443">"వైర్ గల హెడ్‌సెట్"</string>
     <string name="audio_mode_bluetooth" msgid="25732183428018809">"బ్లూటూత్"</string>
-    <string name="wait_prompt_str" msgid="5136209532150094910">"క్రింది టోన్‌లు పంపాలా?\n"</string>
+    <string name="wait_prompt_str" msgid="5136209532150094910">"కింది టోన్‌లు పంపాలా?\n"</string>
     <string name="pause_prompt_str" msgid="2308897950360272213">"టోన్‌లు పంపుతోంది\n"</string>
     <string name="send_button" msgid="5070379600779031932">"పంపు"</string>
     <string name="pause_prompt_yes" msgid="8184132073048369575">"అవును"</string>
@@ -96,7 +96,7 @@
     <string name="sum_loading_settings" msgid="434063780286688775">"సెట్టింగ్‌లను లోడ్ చేస్తోంది…"</string>
     <string name="sum_hide_caller_id" msgid="131100328602371933">"అవుట్‌గోయింగ్ కాల్స్‌లో నంబర్ దాచబడుతుంది"</string>
     <string name="sum_show_caller_id" msgid="3571854755324664591">"అవుట్‌గోయింగ్ కాల్స్‌లో నంబర్ ప్రదర్శించబడుతుంది"</string>
-    <string name="sum_default_caller_id" msgid="1767070797135682959">"అవుట్‌గోయింగ్ కాల్స్‌లో నా నంబర్‌ను ప్రదర్శించడానికి డిఫాల్ట్ ఆపరేటర్ సెట్టింగ్‌లను ఉపయోగించు"</string>
+    <string name="sum_default_caller_id" msgid="1767070797135682959">"అవుట్‌గోయింగ్ కాల్స్‌లో నా నంబర్‌ను ప్రదర్శించడానికి ఆటోమేటిక్ ఆపరేటర్ సెట్టింగ్‌లను ఉపయోగించు"</string>
     <string name="labelCW" msgid="8449327023861428622">"కాల్ నిరీక్షణ"</string>
     <string name="sum_cw_enabled" msgid="3977308526187139996">"కాల్ సమయంలో, ఇన్‌కమింగ్ కాల్స్‌ల గురించి నాకు తెలియజేయి"</string>
     <string name="sum_cw_disabled" msgid="3658094589461768637">"కాల్ సమయంలో, ఇన్‌కమింగ్ కాల్స్‌ల గురించి నాకు తెలియజేయి"</string>
@@ -151,7 +151,7 @@
     <string name="disable" msgid="1122698860799462116">"ఆఫ్ చేయి"</string>
     <string name="change_num" msgid="6982164494063109334">"అప్‌డేట్ చేయి"</string>
   <string-array name="clir_display_values">
-    <item msgid="8477364191403806960">"నెట్‌వర్క్ డిఫాల్ట్"</item>
+    <item msgid="8477364191403806960">"నెట్‌వర్క్ ఆటోమేటిక్"</item>
     <item msgid="6813323051965618926">"నంబర్‌ను దాచు"</item>
     <item msgid="9150034130629852635">"నంబర్‌ను చూపు"</item>
   </string-array>
@@ -480,9 +480,9 @@
     <string name="pin2_or_fdn_invalid" msgid="7542639487955868181">"FDN నవీకరించబడలేదు. PIN2 చెల్లదు లేదా ఫోన్ నంబర్ తిరస్కరించబడింది."</string>
     <string name="fdn_failed" msgid="216592346853420250">"FDN చర్య విఫలమైంది."</string>
     <string name="simContacts_emptyLoading" msgid="4989040293858675483">"SIM కార్డు నుండి చదువుతోంది…"</string>
-    <string name="simContacts_empty" msgid="1135632055473689521">"మీ SIM కార్డులో పరిచయాలు ఏవీ లేవు."</string>
-    <string name="simContacts_title" msgid="2714029230160136647">"దిగుమతికి పరిచయాల ఎంపిక"</string>
-    <string name="simContacts_airplaneMode" msgid="4654884030631503808">"SIM కార్డ్‌లోని పరిచయాలను దిగుమతి చేయడానికి ఎయిర్‌ప్లైన్ మోడ్‌ను ఆఫ్ చేయండి."</string>
+    <string name="simContacts_empty" msgid="1135632055473689521">"మీ SIM కార్డులో కాంటాక్ట్‌లు ఏవీ లేవు."</string>
+    <string name="simContacts_title" msgid="2714029230160136647">"దిగుమతి చేసుకోవాలనుకున్న కాంటాక్ట్‌లను ఎంచుకోండి"</string>
+    <string name="simContacts_airplaneMode" msgid="4654884030631503808">"SIM కార్డ్‌లోని కాంటాక్ట్‌లను దిగుమతి చేయడానికి ఎయిర్‌ప్లైన్ మోడ్‌ను ఆఫ్ చేయండి."</string>
     <string name="enable_pin" msgid="967674051730845376">"SIM PINను ప్రారంభించండి/నిలిపివేయండి"</string>
     <string name="change_pin" msgid="3657869530942905790">"SIM PINను మార్చండి"</string>
     <string name="enter_pin_text" msgid="3182311451978663356">"SIM పిన్‌:"</string>
@@ -588,7 +588,7 @@
     <string name="onscreenVideoCallText" msgid="1743992456126258698">"వీడియో కాల్"</string>
     <string name="importSimEntry" msgid="3892354284082689894">"దిగుమతి చేయి"</string>
     <string name="importAllSimEntries" msgid="2628391505643564007">"అన్నింటినీ దిగుమతి చేయి"</string>
-    <string name="importingSimContacts" msgid="4995457122107888932">"SIM పరిచయాలను దిగుమతి చేస్తోంది"</string>
+    <string name="importingSimContacts" msgid="4995457122107888932">"SIM కాంటాక్ట్‌లను దిగుమతి చేస్తోంది"</string>
     <string name="importToFDNfromContacts" msgid="5068664870738407341">"పరిచయాల నుండి దిగుమతి చేయి"</string>
     <string name="singleContactImportedMsg" msgid="3619804066300998934">"కాంటాక్ట్ దిగుమతి చేయబడింది"</string>
     <string name="failedToImportSingleContactMsg" msgid="228095510489830266">"కాంటాక్ట్‌ను దిగుమతి చేయడంలో విఫలమైంది"</string>
@@ -691,8 +691,8 @@
     <string name="callFailed_wifi_lost" msgid="1788036730589163141">"Wi-Fi కనెక్షన్ పోయింది. కాల్ ముగిసింది."</string>
     <string name="dialFailed_low_battery" msgid="6857904237423407056">"తక్కువ బ్యాటరీ కారణంగా మీ వీడియో కాల్ చేయడం సాధ్యపడదు."</string>
     <string name="callFailed_low_battery" msgid="4056828320214416182">"తక్కువ బ్యాటరీ కారణంగా వీడియో కాల్ ముగిసింది."</string>
-    <string name="callFailed_emergency_call_over_wfc_not_available" msgid="5944309590693432042">"Wi-Fi కాలింగ్ ద్వారా అత్యవసర కాల్స్‌ ఈ స్థానంలో అందుబాటులో లేవు."</string>
-    <string name="callFailed_wfc_service_not_available_in_this_location" msgid="3624536608369524988">"ఈ స్థానంలో Wi-Fi కాలింగ్ అందుబాటులో లేదు."</string>
+    <string name="callFailed_emergency_call_over_wfc_not_available" msgid="5944309590693432042">"Wi-Fi కాలింగ్ ద్వారా అత్యవసర కాల్స్‌ ఈ లొకేషన్‌లో అందుబాటులో లేవు."</string>
+    <string name="callFailed_wfc_service_not_available_in_this_location" msgid="3624536608369524988">"ఈ లొకేషన్‌లో Wi-Fi కాలింగ్ అందుబాటులో లేదు."</string>
     <string name="change_pin_title" msgid="3564254326626797321">"వాయిస్ మెయిల్ PINని మార్చండి"</string>
     <string name="change_pin_continue_label" msgid="5177011752453506371">"కొనసాగించండి"</string>
     <string name="change_pin_cancel_label" msgid="2301711566758827936">"రద్దు చేయి"</string>
@@ -877,7 +877,7 @@
     <string name="radioInfo_lac" msgid="3892986460272607013">"LAC"</string>
     <string name="radioInfo_cid" msgid="1423185536264406705">"CID"</string>
     <string name="radio_info_subid" msgid="6839966868621703203">"ప్రస్తుత subId:"</string>
-    <string name="radio_info_dds" msgid="1122593144425697126">"డిఫాల్ట్ డేటా SIM యొక్క SubId:"</string>
+    <string name="radio_info_dds" msgid="1122593144425697126">"ఆటోమేటిక్ డేటా SIM యొక్క SubId:"</string>
     <string name="radio_info_dl_kbps" msgid="2382922659525318726">"DL బ్యాండ్‌విడ్త్ (kbps):"</string>
     <string name="radio_info_ul_kbps" msgid="2102225400904799036">"UL బ్యాండ్‌విడ్త్ (kbps):"</string>
     <string name="radio_info_phy_chan_config" msgid="1277949603275436081">"LTE భౌతిక ఛానెల్ కాన్ఫిగరేషన్:"</string>
diff --git a/sip/res/values-in/strings.xml b/sip/res/values-in/strings.xml
index 709205c..6c52a73 100644
--- a/sip/res/values-in/strings.xml
+++ b/sip/res/values-in/strings.xml
@@ -72,7 +72,7 @@
     <string name="empty_alert" msgid="3693655518612836718">"<xliff:g id="INPUT_FIELD_NAME">%s</xliff:g> diwajibkan dan tidak boleh kosong."</string>
     <string name="not_a_valid_port" msgid="3664668836663491376">"Nomor port harus dalam rentang 1000 dan 65534."</string>
     <string name="no_internet_available" msgid="161720645084325479">"Untuk melakukan panggilan SIP, periksa koneksi internet terlebih dahulu."</string>
-    <string name="no_wifi_available" msgid="1179092018692306312">"Anda harus tersambung ke jaringan Wi-Fi untuk melakukan panggilan SIP (gunakan setelan Nirkabel &amp; Jaringan)."</string>
+    <string name="no_wifi_available" msgid="1179092018692306312">"Anda harus terhubung ke jaringan Wi-Fi untuk melakukan panggilan SIP (gunakan setelan Nirkabel &amp; Jaringan)."</string>
     <string name="no_voip" msgid="3366395789297981738">"Panggilan SIP tidak didukung"</string>
     <string name="sip_system_decide" msgid="197230378376326430">"Otomatis"</string>
     <string name="sip_always_send_keepalive" msgid="4986533673960084769">"Selalu kirim"</string>
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java
index 64b2e4d..03b0be9 100755
--- a/src/com/android/phone/PhoneInterfaceManager.java
+++ b/src/com/android/phone/PhoneInterfaceManager.java
@@ -341,6 +341,10 @@
     private static final int CMD_GET_SLICING_CONFIG = 110;
     private static final int EVENT_GET_SLICING_CONFIG_DONE = 111;
     private static final int CMD_ERASE_DATA_SHARED_PREFERENCES = 112;
+    private static final int CMD_ENABLE_VONR = 113;
+    private static final int EVENT_ENABLE_VONR_DONE = 114;
+    private static final int CMD_IS_VONR_ENABLED = 115;
+    private static final int EVENT_IS_VONR_ENABLED_DONE = 116;
 
     // Parameters of select command.
     private static final int SELECT_COMMAND = 0xA4;
@@ -834,7 +838,7 @@
                     } else {
                         // request.result must be set to something non-null
                         // for the calling thread to unblock
-                        if (request.result != null) {
+                        if (ar.result != null) {
                             request.result = ar.result;
                         } else {
                             request.result = false;
@@ -851,6 +855,46 @@
                     notifyRequester(request);
                     break;
 
+                case CMD_IS_VONR_ENABLED: {
+                    request = (MainThreadRequest) msg.obj;
+                    onCompleted = obtainMessage(EVENT_IS_VONR_ENABLED_DONE,
+                            request);
+                    Phone phone = getPhoneFromRequest(request);
+                    if (phone != null) {
+                        phone.isVoNrEnabled(onCompleted, request.workSource);
+                    } else {
+                        loge("isVoNrEnabled: No phone object");
+                        request.result = false;
+                        notifyRequester(request);
+                    }
+                    break;
+                }
+
+                case EVENT_IS_VONR_ENABLED_DONE:
+                    ar = (AsyncResult) msg.obj;
+                    request = (MainThreadRequest) ar.userObj;
+                    if (ar.exception == null && ar.result != null) {
+                        request.result = ar.result;
+                    } else {
+                        // request.result must be set to something non-null
+                        // for the calling thread to unblock
+                        if (ar.result != null) {
+                            request.result = ar.result;
+                        } else {
+                            request.result = false;
+                        }
+                        if (ar.result == null) {
+                            loge("isVoNrEnabled: Empty response");
+                        } else if (ar.exception instanceof CommandException) {
+                            loge("isVoNrEnabled: CommandException: "
+                                    + ar.exception);
+                        } else {
+                            loge("isVoNrEnabled: Unknown exception");
+                        }
+                    }
+                    notifyRequester(request);
+                    break;
+
                 case CMD_ENABLE_NR_DUAL_CONNECTIVITY: {
                     request = (MainThreadRequest) msg.obj;
                     onCompleted = obtainMessage(EVENT_ENABLE_NR_DUAL_CONNECTIVITY_DONE, request);
@@ -899,6 +943,49 @@
                     break;
                 }
 
+                case CMD_ENABLE_VONR: {
+                    request = (MainThreadRequest) msg.obj;
+                    onCompleted = obtainMessage(EVENT_ENABLE_VONR_DONE, request);
+                    Phone phone = getPhoneFromRequest(request);
+                    if (phone != null) {
+                        phone.setVoNrEnabled((boolean) request.argument, onCompleted,
+                                request.workSource);
+                    } else {
+                        loge("setVoNrEnabled: No phone object");
+                        request.result =
+                                TelephonyManager.ENABLE_VONR_RADIO_NOT_AVAILABLE;
+                        notifyRequester(request);
+                    }
+                    break;
+                }
+
+                case EVENT_ENABLE_VONR_DONE: {
+                    ar = (AsyncResult) msg.obj;
+                    request = (MainThreadRequest) ar.userObj;
+                    if (ar.exception == null) {
+                        request.result = TelephonyManager.ENABLE_VONR_SUCCESS;
+                    } else {
+                        request.result = TelephonyManager.ENABLE_VONR_RADIO_ERROR;
+                        if (ar.exception instanceof CommandException) {
+                            CommandException.Error error =
+                                    ((CommandException) (ar.exception)).getCommandError();
+                            if (error == CommandException.Error.RADIO_NOT_AVAILABLE) {
+                                request.result = TelephonyManager.ENABLE_VONR_RADIO_NOT_AVAILABLE;
+                            } else if (error == CommandException.Error.REQUEST_NOT_SUPPORTED) {
+                                request.result = TelephonyManager.ENABLE_VONR_REQUEST_NOT_SUPPORTED;
+                            } else {
+                                request.result = TelephonyManager.ENABLE_VONR_RADIO_ERROR;
+                            }
+                            loge("setVoNrEnabled" + ": CommandException: "
+                                    + ar.exception);
+                        } else {
+                            loge("setVoNrEnabled" + ": Unknown exception");
+                        }
+                    }
+                    notifyRequester(request);
+                    break;
+                }
+
                 case CMD_GET_ALLOWED_NETWORK_TYPES_BITMASK:
                     request = (MainThreadRequest) msg.obj;
                     onCompleted = obtainMessage(EVENT_GET_ALLOWED_NETWORK_TYPES_BITMASK_DONE,
@@ -2947,6 +3034,14 @@
     @SuppressWarnings("unchecked")
     public List<NeighboringCellInfo> getNeighboringCellInfo(String callingPackage,
             String callingFeatureId) {
+        try {
+            mApp.getSystemService(AppOpsManager.class)
+                    .checkPackage(Binder.getCallingUid(), callingPackage);
+        } catch (SecurityException e) {
+            EventLog.writeEvent(0x534e4554, "190619791", Binder.getCallingUid());
+            throw e;
+        }
+
         final int targetSdk = TelephonyPermissions.getTargetSdk(mApp, callingPackage);
         if (targetSdk >= android.os.Build.VERSION_CODES.Q) {
             throw new SecurityException(
@@ -8205,6 +8300,53 @@
     }
 
     /**
+     * Enable or disable Voice over NR (VoNR)
+     * @param subId the subscription ID that this action applies to.
+     * @param enabled enable or disable VoNR.
+     * @return operation result.
+     */
+    @Override
+    public int setVoNrEnabled(int subId, boolean enabled) {
+        enforceModifyPermission();
+        final Phone phone = getPhone(subId);
+
+        final long identity = Binder.clearCallingIdentity();
+        if (phone == null) {
+            loge("setVoNrEnabled fails with no phone object for subId: " + subId);
+            return TelephonyManager.ENABLE_VONR_RADIO_NOT_AVAILABLE;
+        }
+
+        WorkSource workSource = getWorkSource(Binder.getCallingUid());
+        try {
+            int result = (int) sendRequest(CMD_ENABLE_VONR, enabled, subId,
+                    workSource);
+            if (DBG) log("setVoNrEnabled result: " + result);
+            return result;
+        } finally {
+            Binder.restoreCallingIdentity(identity);
+        }
+    }
+
+    /**
+     * Is voice over NR enabled
+     * @return true if VoNR is enabled else false
+     */
+    @Override
+    public boolean isVoNrEnabled(int subId) {
+        enforceReadPrivilegedPermission("isVoNrEnabled");
+        WorkSource workSource = getWorkSource(Binder.getCallingUid());
+        final long identity = Binder.clearCallingIdentity();
+        try {
+            boolean isEnabled = (boolean) sendRequest(CMD_IS_VONR_ENABLED,
+                    null, subId, workSource);
+            if (DBG) log("isVoNrEnabled: " + isEnabled);
+            return isEnabled;
+        } finally {
+            Binder.restoreCallingIdentity(identity);
+        }
+    }
+
+    /**
      * Action set from carrier signalling broadcast receivers to start/stop reporting the default
      * network status based on which carrier apps could apply actions accordingly,
      * enable/disable default url handler for example.
diff --git a/src/com/android/phone/settings/RadioInfo.java b/src/com/android/phone/settings/RadioInfo.java
index b1ab413..d4c926e 100644
--- a/src/com/android/phone/settings/RadioInfo.java
+++ b/src/com/android/phone/settings/RadioInfo.java
@@ -673,6 +673,12 @@
         mPreferredNetworkType.setSelection(mPreferredNetworkTypeResult, true);
         mPreferredNetworkType.setOnItemSelectedListener(mPreferredNetworkHandler);
 
+        new Thread(() -> {
+            int networkType = (int) mTelephonyManager.getPreferredNetworkTypeBitmask();
+            updatePreferredNetworkType(
+                    RadioAccessFamily.getNetworkTypeFromRaf(networkType));
+        }).start();
+
         // set phone index
         mSelectPhoneIndex.setSelection(mSelectedPhoneIndex, true);
         mSelectPhoneIndex.setOnItemSelectedListener(mSelectPhoneIndexHandler);