diff --git a/res/values-ca/arrays.xml b/res/values-ca/arrays.xml
index 6c9bbd1..2cab754 100644
--- a/res/values-ca/arrays.xml
+++ b/res/values-ca/arrays.xml
@@ -122,7 +122,7 @@
     <item msgid="4241913314075719627">"Sempre visible"</item>
   </string-array>
   <string-array name="bluetooth_max_connected_audio_devices">
-    <item msgid="4792793579224104167">"Utilitza la configuració predeterminada del sistema: <xliff:g id="DEFAULT_BLUETOOTH_MAX_CONNECTED_AUDIO_DEVICES">%1$d</xliff:g>"</item>
+    <item msgid="4792793579224104167">"Utilitza la quantitat predeterminada del sistema: <xliff:g id="DEFAULT_BLUETOOTH_MAX_CONNECTED_AUDIO_DEVICES">%1$d</xliff:g>"</item>
     <item msgid="5818942631838356082">"1"</item>
     <item msgid="4804155564025402919">"2"</item>
     <item msgid="7123296338505723878">"3"</item>
diff --git a/res/values-gu/arrays.xml b/res/values-gu/arrays.xml
index 1c34284..2f90086 100644
--- a/res/values-gu/arrays.xml
+++ b/res/values-gu/arrays.xml
@@ -219,7 +219,7 @@
     <item msgid="2362840341195111674">"સિસ્ટમને નક્કી કરવા દો"</item>
   </string-array>
   <string-array name="app_ops_categories">
-    <item msgid="528483497841471005">"સ્થાન"</item>
+    <item msgid="528483497841471005">"લોકેશન"</item>
     <item msgid="7786376598377098070">"વ્યક્તિગત"</item>
     <item msgid="7707692387382449990">"મેસેજિંગ"</item>
     <item msgid="2235402926760712958">"મીડિયા"</item>
@@ -295,7 +295,7 @@
   <string-array name="app_ops_labels">
     <item msgid="7780927354556651567">"લોકેશન"</item>
     <item msgid="364182753727575631">"લોકેશન"</item>
-    <item msgid="5728662879095632194">"સ્થાન"</item>
+    <item msgid="5728662879095632194">"લોકેશન"</item>
     <item msgid="4104617224667554750">"વાઇબ્રેટ"</item>
     <item msgid="1623646715189708947">"સંપર્કો વાંચો"</item>
     <item msgid="5060760609109972207">"સંપર્કો સંશોધિત કરો"</item>
diff --git a/res/values-kk/arrays.xml b/res/values-kk/arrays.xml
index 7c66dcd..9c32c86 100644
--- a/res/values-kk/arrays.xml
+++ b/res/values-kk/arrays.xml
@@ -122,7 +122,7 @@
     <item msgid="4241913314075719627">"Ешқашан"</item>
   </string-array>
   <string-array name="bluetooth_max_connected_audio_devices">
-    <item msgid="4792793579224104167">"Жүйенінің әдепкі мәнін пайдалану: <xliff:g id="DEFAULT_BLUETOOTH_MAX_CONNECTED_AUDIO_DEVICES">%1$d</xliff:g>"</item>
+    <item msgid="4792793579224104167">"Жүйенің әдепкі мәнін пайдалану: <xliff:g id="DEFAULT_BLUETOOTH_MAX_CONNECTED_AUDIO_DEVICES">%1$d</xliff:g>"</item>
     <item msgid="5818942631838356082">"1"</item>
     <item msgid="4804155564025402919">"2"</item>
     <item msgid="7123296338505723878">"3"</item>
diff --git a/res/values-mk/arrays.xml b/res/values-mk/arrays.xml
index 31d99b5..0b615f6 100644
--- a/res/values-mk/arrays.xml
+++ b/res/values-mk/arrays.xml
@@ -383,7 +383,7 @@
   <string-array name="captioning_font_size_selector_titles">
     <item msgid="923916134548435468">"Многу мали"</item>
     <item msgid="5738147437573674872">"Мали"</item>
-    <item msgid="4691660235626027304">"Среден"</item>
+    <item msgid="4691660235626027304">"Средни"</item>
     <item msgid="824386705928670045">"Големи"</item>
     <item msgid="2790561781512874585">"Многу големи"</item>
   </string-array>
diff --git a/res/values-ml/arrays.xml b/res/values-ml/arrays.xml
index 3707728..28fca93 100644
--- a/res/values-ml/arrays.xml
+++ b/res/values-ml/arrays.xml
@@ -527,8 +527,8 @@
     <item msgid="5746729990546256950">"മുൻഗണന നൽകുന്നത് GSM/WCDMA"</item>
     <item msgid="6443811977675152844">"GSM മാത്രം"</item>
     <item msgid="8767554719068876877">"WCDMA മാത്രം"</item>
-    <item msgid="928773614806830223">"GSM/WCDMA സ്വമേധയാ"</item>
-    <item msgid="6742068706546460481">"CDMA/EvDo സ്വമേധയാ"</item>
+    <item msgid="928773614806830223">"GSM/WCDMA സ്വയമേവ"</item>
+    <item msgid="6742068706546460481">"CDMA/EvDo സ്വയമേവ"</item>
     <item msgid="3649606999166018819">"EvDo ഇല്ലാത്ത CDMA"</item>
     <item msgid="3335567389804180984">"EvDo മാത്രം"</item>
     <item msgid="30756226617172695">"CDMA/EvDo/GSM/WCDMA"</item>
diff --git a/res/values-or/arrays.xml b/res/values-or/arrays.xml
index a1de987..89b0d80 100644
--- a/res/values-or/arrays.xml
+++ b/res/values-or/arrays.xml
@@ -467,7 +467,7 @@
     <item msgid="5777152116210127847">"ଶ୍ରେଷ୍ଠ ଗତିବିଧି"</item>
     <item msgid="1834030155560727324">"ଜରୁରୀ (ଫୋର୍‌ଗ୍ରାଉଣ୍ଡ)"</item>
     <item msgid="8494424742994426350">"ଗୁରୁତ୍ଵପୁର୍ଣ୍ଣ (ପୃଷ୍ଠପଟ)"</item>
-    <item msgid="5099332663422156149">"ବ୍ୟାକଅପ"</item>
+    <item msgid="5099332663422156149">"ବେକଅପ"</item>
     <item msgid="7701089238529887617">"ଭାରୀ"</item>
     <item msgid="3006466648960525485">"ସେବା (ଚାଲୁଛି)"</item>
     <item msgid="2253476667031759713">"ସେବା (ରିଷ୍ଟାର୍ଟ ହେଉଛି)"</item>
diff --git a/res/values-pl/arrays.xml b/res/values-pl/arrays.xml
index 682d1f6..76c5c9c 100644
--- a/res/values-pl/arrays.xml
+++ b/res/values-pl/arrays.xml
@@ -122,7 +122,7 @@
     <item msgid="4241913314075719627">"Brak limitu czasu"</item>
   </string-array>
   <string-array name="bluetooth_max_connected_audio_devices">
-    <item msgid="4792793579224104167">"Użyj ustawienia domyślnego systemu: <xliff:g id="DEFAULT_BLUETOOTH_MAX_CONNECTED_AUDIO_DEVICES">%1$d</xliff:g>"</item>
+    <item msgid="4792793579224104167">"Użyj systemowego ustawienia domyślnego: <xliff:g id="DEFAULT_BLUETOOTH_MAX_CONNECTED_AUDIO_DEVICES">%1$d</xliff:g>"</item>
     <item msgid="5818942631838356082">"1"</item>
     <item msgid="4804155564025402919">"2"</item>
     <item msgid="7123296338505723878">"3"</item>
diff --git a/src/com/android/settings/location/BluetoothScanningMainSwitchPreferenceController.java b/src/com/android/settings/location/BluetoothScanningMainSwitchPreferenceController.java
index b491ec9..78e3184 100644
--- a/src/com/android/settings/location/BluetoothScanningMainSwitchPreferenceController.java
+++ b/src/com/android/settings/location/BluetoothScanningMainSwitchPreferenceController.java
@@ -18,6 +18,7 @@
 import android.content.Context;
 import android.provider.Settings;
 import android.widget.Switch;
+import android.os.UserManager;
 
 import androidx.preference.PreferenceScreen;
 
@@ -33,9 +34,11 @@
         implements OnMainSwitchChangeListener {
 
     private static final String KEY_BLUETOOTH_SCANNING_SWITCH = "bluetooth_always_scanning_switch";
+    private final UserManager mUserManager;
 
     public BluetoothScanningMainSwitchPreferenceController(Context context) {
         super(context, KEY_BLUETOOTH_SCANNING_SWITCH);
+        mUserManager = UserManager.get(context);
     }
 
     @Override
@@ -49,7 +52,9 @@
     @Override
     public int getAvailabilityStatus() {
         return mContext.getResources().getBoolean(R.bool.config_show_location_scanning)
-                ? AVAILABLE
+                ? (mUserManager.hasUserRestriction(UserManager.DISALLOW_CONFIG_LOCATION)
+                        ? DISABLED_DEPENDENT_SETTING
+                        : AVAILABLE)
                 : UNSUPPORTED_ON_DEVICE;
     }
 
diff --git a/src/com/android/settings/location/WifiScanningMainSwitchPreferenceController.java b/src/com/android/settings/location/WifiScanningMainSwitchPreferenceController.java
index 546f1e1..e22b0a0 100644
--- a/src/com/android/settings/location/WifiScanningMainSwitchPreferenceController.java
+++ b/src/com/android/settings/location/WifiScanningMainSwitchPreferenceController.java
@@ -18,6 +18,7 @@
 import android.content.Context;
 import android.net.wifi.WifiManager;
 import android.widget.Switch;
+import android.os.UserManager;
 
 import androidx.preference.PreferenceScreen;
 
@@ -34,10 +35,12 @@
 
     private static final String KEY_WIFI_SCANNING_SWITCH = "wifi_always_scanning_switch";
     private final WifiManager mWifiManager;
+    private final UserManager mUserManager;
 
     public WifiScanningMainSwitchPreferenceController(Context context) {
         super(context, KEY_WIFI_SCANNING_SWITCH);
         mWifiManager = context.getSystemService(WifiManager.class);
+        mUserManager = UserManager.get(context);
     }
 
     @Override
@@ -52,7 +55,9 @@
     @Override
     public int getAvailabilityStatus() {
         return mContext.getResources().getBoolean(R.bool.config_show_location_scanning)
-                ? AVAILABLE
+                ? (mUserManager.hasUserRestriction(UserManager.DISALLOW_CONFIG_LOCATION)
+                       ? DISABLED_DEPENDENT_SETTING
+                       : AVAILABLE)
                 : UNSUPPORTED_ON_DEVICE;
     }
 
